NUMBER 10
$2.50
fl^FILDKigK^^
THE ONLY CHOICE FOR SERIOUS ATARI * OWNERS !
^R^OSAIC
ELECTRONICS, INC.
forgets:
MOK THflN JUSTANOnn PREm FACE.
Says who? Says ANSI.
Specifically, subcommittee X3B8 of the American
National Standards Institute (ANSI) says so. The fact
is all Elephant™ floppies meet or exceed the specs
required to meet or exceed all their standards.
But just who is "subcommittee X3B8" to issue such
pronouncements?
They're a group of people representing a large,
well-balanced cross section of disciplines— from
academia, government agencies, and the computer
industry. People from places like IBM, Hewlett-Packard,
3M, Lawrence Livermore Labs, The U.S. Department
of Defense, Honeywell and The Association of Com-
puter Programmers and Analysts. In short, it's a bunch
of high-caliber nitpickers whose mission, it seems, in
order to make better disks for consumers, is also to
make life miserable for everyone in the disk-making
business.
How? By gathering together periodically (often,
one suspects, under the full moon) to concoct more
and more rules to increase the quality of flexible
disks. Their most recent rule book runs over 20 single-
spaced pages— listing, and insisting upon— hundreds
upon hundreds of standards a disk must meet in
order to be blessed by ANSI. (And thereby be taken
seriously by people who take disks seriously.)
In fact, if you'd like a copy of this formidable docu-
ment, for free, just let us know and we'll send you
one. Because once you know what it takes to make
an Elephant for ANSI . . .
We think you'll want us to make some Elephants
for you.
aEPHANT. HEM DUTY nSKS.
For a free poster-size portrait of our powerful pachydemn, please write us.
Distributed Exclusively by Leading Edge Products, Inc., 225 Turnpike Street, Canton, Massachusetts 02021
Call: toll-free 1-800-343-6833; or in Massachusetts call collect (617) 828-8150. Telex 951-624.
^1
'^"^■^
^•'"""■•'"MlSfti^Ssifc*'^
MiitfH
.^^
IT'S DYNAMITE!
NENA/GAME FROM
A.N.A.L.O.G
So you think you're good, huh? Getting a little harder, isn't it?
!
OH NO! WIPEOUT!!!
TM
While flying your helicopter over a high mountain plateau in Tibet, your nnagnetic detector chatters wildly — you
have discovered the treasure of a long-lost Sherpa kingdom!
Quickly equipping your 'copter with explosives, you fly over the plateau and attempt to blast the treasure out, in-
tending to split the profits with the Sherpa natives.
But, flying over you in his World War II bomber, the evil Dr. Muta has other plans — he intends for the treasure to
remain buried — along with you!
Burled Bucks is a fast action "daredevil" game written entirely in machine language for 1 or2 players. 16K cassette
or diskette.
Burled Bucks — the newest game for the ATARI, with great graphics, brilliant colors, dynamite sound effects —
guaranteedfastaction!!99levelsof play assure long lasting challenge. Will the evil Dr. Mutadefeat you? Will the bucks
remain buried forever? Don't go for broke — go for the bucks — BURIED BUCKS!
PLAYING NOW AT FINE COMPUTER STORES EVERYWHERE!
/^~^\/l^\\/l^n^/n\/l zj\ software
\ RO. BOX23
WORCESTER. MA 01603
(617)892-3488
ATARI is a trademark o( ATARI. Inc. Buried Bucl^s is a trademark of A.N.A.L.O.G. Software
YOU'RE GOING TO HAVE FUN
WITH YOUR ATARI!!
AND THE FUN GETS ROLLING
WITH BUG OFF!
Yikes! The bugs are swarming here, there
and everywhere and only a strong whiff of DDT
can put 'em away. The object of the game is to
control the seven different kinds of pests that are
running helter-skelter over everything. The Army
can airlift In more DDT to fill your bug sprayer . . .
but will they make It in time?
The action builds to a furious frenzy as an
awesome assortment of insects attack anything
and everything in sight. A definite case of "spray
first and ask questions later." All this and hi-res
graphics, too!
16K TAPE 050-0167 $29.95
32K DISK 052-0167 $29.95
TUTTI FRUTTI — by Alan Newman
"GRAPE FUN" FOR THE WHOLE FAMILY!
Somewhere between Never Never Land and
next Thursday, there's a wild and wacky place
where your joystick-controlled "Hungry" snacks on
an orchard of goodies. But there are some nasty ol'
bugs who'd just as soon snack on YOU, so look
sharp and beware. Funtastic action for all ages!
TUTTI FRUTTI . . . Wow! A crazy cast of
characters in vivid hi-res color all performing in
their natural habitat, otherwise known as TUTTI
FRUTTI Land. Grape fun for ages 6 and up!
16K TAPE 050-0160 $24.95
32K DISK 052-0160 $24.95
dventur6
INTERNATIONAL
To order, see your local dealer. If he does not have the program, then ca
1 ■800-327-71 72 (orders only please) or write for our free catalog.
Published by ADVENTURE INTERNATIONAL
a subsidiary of Scott Adams, Inc.
BOX 3435 • LONGWOOD, FL 32750 • (305) 862-6917
PRICES SUBJECT TO CHANGE
"^^^^^i ^T'^"'® '* ^ registered trademark of ATARI, INC., a Warner Communications Company
and all references to ATARI® s hould be so noted.
A.N.A.L.O.G. STAFF
Editors/Publishers
MICHAEL DESCHENES
LEE H. PAPPAS
Managing Editor
JON A. BELL
Contributing Editors
TONY MESSINA
DR. GARY ROSE
MARCIA ROSE
Art Director
BOB DESI
Technical Division
CHARLES BACHAND
TOM HUDSON
BRIAN MORIARTY
Advertising Manager
MICHAEL DESCHENES
Distribution
PATRICK J. KELLEY
Typography
HENDRICKX &
LARRIVEE Co., Inc.
Production/Distribution
LORELL PRESS, INC.
Contributors
MARSHALL R ADAMS
TED ADKINSON
RICHARD A. BENSON
MICHAEL DUBOY
KEITH EVANS
BRAD GRIFFIN
SOL GUBER
RICHARD HERRING
WILLIAM W. HOUGH
THOMAS M. KRISCHAN
KEVIN LEVER
KEN LITKOWSKI
GREG PECK
DONALD B. WILCOX
A.N.A.L.O.G.
Magazine Corp. is in no way
affiliated with ATARI.
ATARI is a trademark of
ATARI, Inc.
FEATURES/ARTICLES
The ATARI 1200XL Lee Pappas 32
Accessing Bulletin Board Systems William W. Hough 49
The Challenge of the Quest Brad Griffin 56
Adventure Games Chart Brad Griffin 59
Epson Printing Modes Thomas M. Krischan 61
A Lisp Tutorial Ken Litkowski 85
The Percom Drive w/ith Double-Sided Disks Kevin Lever 92
Installing Your Own GTIA Chip Richard Herring 94
Beginner's Pilot Thomas M. Krischan 113
REVIEWS/PROFILES
Wayout Brian Moriarty 18
B Key 400 Richard A. Benson 20
Scott Adams Adventures 1-12 Brad Griffin 98
PROGRAM LISTINGS
utility #4: Disk Directory Dump Tony Messina 23
D:CHECK 2 jom Hudson 26
Magic Keypad Greg Peck 28
An Adventure Game Michael Duboy 44
A Master File Directory Using DMS Marshall D. Abrams 64
Simple P/M Assembly Language Luke Lorusso 68
Moving Players in BASIC Tom Hudson 73
The Halls of the Keith Evans and
Leprechaun King Ted Adkinson 79
Fill 'Er Up! Tom Hudson 100
Word Square Sol Guber 110
COLUMNS
Editorial jon Bell 6
Reader Comment q
New Products The Program Doctors 14
Index to Advertisers ng
A.N.A.L.O.G. COMPUTING (ISSN 0744-9917) is published bi-monthly for $14 per year
by A.N.A.L.O.G. Magazine Corp., 565 Main Street, Cherry Valley, MA 01611, Tel. (617)
892-3488. Second-class postage paid at Worcester, MA and additional mailing offices. |
POSTMASTER: Send address changes to A.N.A.L.O.G. COMPUTING, RO. Box 615,
Holmes, PA 19043. No portion of this magazine may be reproduced in any form without I
written permission of the publisher. Program listings should be provided in printed form, f
Articles should be furnished as typed copy in upper and lower case with double spacing. By
submitting articles to A.N.A.L.O.G. COMPUTING, authors acknowledge that such |
materials, upon acceptance for publication, become the exclusive property of A. N. A. L. O. G.
If not accepted for publication, the articles and/or programs will remain the property of the I
author. If submissions are to be returned, please supply self addressed, stamped envelope.
Contents copyright ® 1983 A.N.A.L.O.G. Magazine Corp.
PAGE 6
A.N.A.L.O.G. COMPUTING
ISSUE 10
by Jon Bell
This issue's editorial deals with bits and pieces. A
lot has occurred since A.N.A.L.O.G. No. 9, so I
want to mention a number of things concerning this
issue, as well as what you're likely to see in our pages
in the near future.
Whither ATARI Follow-up
The response to the editorial in the last issue has
been overwhelming. "Whither ATARI?" seemed to
have touched a nerve among many ATARI owners,
as well as from companies manufacturing ATARI
software (see Reader Comment, page eight). Not
surprisingly (to us), there was no response from
anyone at ATARI, even though dozens of people at
ATARI receive A.N.A.L.O.G. If we receive any
word from the creators of our favorite home
computers, we'll be sure to let you know.
There is a point that I'd like to clear up concerning
the origins of "Whither ATARI?" The gentleman
who wrote the editorial wrote it in conjunction with
the editors of the Portland ATARI Club newsletter
of Portland, Oregon. The editorial originally
appeared in the October, 1982 edition of the P. A.C.
newsletter. Due to a mutual misunderstanding, the
credit for the article reprint was not given. For this I
would like to apologize. The author's name was
withheld at his request. I hope that the increased
exposure of our thoughts, so well expressed in
"Whither ATARI?", will in some manner influence
the way ATARI sees its products — and the people
who buy them.
The Reader's Poll
At the time of this writing, it's still too early to
announce the winners of our free cassette and disk
subscriptions, or the winner of the Favorite
Program/ Article Contest. By the time you read this,
however, we will have picked the winners of both,
and will have contacted them. The Reader's Poll
cards have been pouring in at the rate of hundreds
per week, and the preliminary results have been very
interesting. The final results of all cards received will
be given in the next issue, but I can mention the
changes that we will be implementing in
A.N.A.L.O.G., starting in this issue. In other
words, you asked for it, you got it! Generally, our
readers would like to see:
. . . more reviews of both hardware and
software, with plenty of pictures. Our
readers have indicated that they want to
read tough, no-holds-barred reviews of
ATARI products before spending their
money.
. . . more beginner's programs in both
BASIC and Assembly language.
. . .an increased emphasis on
educational and business software.
. . .how to access bulletin board
systems.
. . . and, not surprisingly, at least two
games per issue.
Well, if you scan this issue, you can see that we
have a great deal of reviews with pictures, a
beginner's player/missile graphics article, an article
on how to access bulletin board systems, and three
games, including a super Assembly-language game
from Tom Hudson, author of "Graphic Violence!",
A.N.A.L.O.G. No. 8. Fans of a certain coin-op
arcade game should get plenty of kicks from it.
The A.N.A.L.O.G. Compendium
First, the bad news. We have a very limited
number of back issues still available. The only issues
available are no.'s 2,7, and 8. When these are gone,
that's it. No back issue of A.N.A.L.O.G. will be
reprinted, so those of you who have all the back
issues should consider them collector's items. Now,
the good news. We are going to be publishing,
sometime in spring. The A.N.A.L.O.G. Com-
pendium, a large-format book which will contain
the best articles and programs from the first 10 issues
of A.N.A.L.O.G. Computing. The Compen-
dium will contain utilities, games, tutorials and
demo programs. It will be available in your local
computer store, or you can order it direct from us.
However, please do not call us until we have an-
nounced shipment in the magazine. We are not
accepting advance orders now, so please be patient. I
think you'll like it. D
The staff of A. hi. A. L. O. G. would like to thank the staff
of The Higgins Armory Museum for alio^ving us the use
of their facilities for the production of this issue.
ADD A FLOPPY DISK TO YOUR ATARI*
m FOR LESS THAN $450 "»
Now Atari* users can upgrade to 5" or 8" floppy
disks at an affordable price with MICRO MAIN-
FRAME.
Micro Mainframe, ttie premier manufacturer of low
cost add on peripherals for the TRS-80 computer,
is proud to announce our lineup of products for the
Atari* computer. Micro Mainframe is not a new-
comer to the computer marketplace, as we have
been supplying quality disk drives for the TRS-80*
for three years. We now bring our expertise to the
Atari* market and pledge to provide the highest
quality peripherals at the lowest price.
Our floppy disk drive is designed to sell for under
$450, and check out the features:
Low Initial cost includes one disk drive and controller
' Single and Double Density operation STANDARD
Additional drives available for under $200
• Controller features a proprietary digital phase lock loop data separator for unparalleled reliability
• Operates 8" disk drives with our MaxiDos A operating system (AVAILABLE MID-ig83)
• Intermix 5" and 8" disk drives with MaxiDos A
• Includes a parallel printer port to allow the use of low cost printers
• Expandable to include hard disk operation (requires expansion chassis and host adapter)
• Includes a SWITCHING POWER SUPPLY that is capable of running two disk drives
• Can be used in conjunction with other Micro Mainframe peripherals
The expensive Atari* 810 disk drive includes a
costly disk controller and power supply for each
drive. This is wasteful as one controller can easily
control up to four disk drives. With a MICRO
MAINFRAME drive, you pay only once for the disk
controller. To add a second disk drive, you merely
purchase a disk drive and case. The power supply
in your first drive will power an additional disk
drive. Other manufacturers use cheap linear
power supplies which generate considerable heat
that can shorten the life of your electronic equip-
ment.
ADD A DISK DRIVE TO YOUR
ATARI* FOR LESS THAN $90
If you already own a TRS-80 Model-Ill*, you can
use your Model-Ill* as an intelligent disk controller
with the addition of our CONNECTION A™. This
peripheral connects between the 50 pin expansion
bus on the Model-Ill* computer and the Atari* 400
or 800 computer. After loading the supplied soft-
ware package, your Model-Ill* computer thinks
that it is an Atari* disk drive and you can read and
write Atari* diskettes on your Model-Ill* for less
than $90.
Dealer Inquiries are Solicited
MICRO MAINFRAME
11325 Sunrise Gold Circle
Building E
Rancho Cordova, CA 95670
(916)635-3997
A.N.A.L.O.G. COMPUTING
Al
r
k
_ llTi I k?i I
"J L i I L i 1 n
Due to the response from "Whither
ATARI?" this issue's Reader Com-
ment section has been considerably
expanded, so our readers can voice
their opinions unedited.
Dear Editor:
In response to your request for
comment the following is sub-
mitted. I happen to be one of the
many who bought an ATARI
during the July- August 1981
crest. Your comments are right on
the button. It has amazed me at the
apparent lack of marketing for
what I think is the most versatile
system available to the home
market. Having been in the
computer field since 1963, using
the ATARI 800 is a real pleasure
even after coming home from
working on Univacs, DEC's,
Harris and Honeywell systems.
When telling someone you
have a computer at home the first
problem you experience as you
say "ATARI" is the game
syndrome. ATARI'S image as a
game machine is fixed in most
peoples' minds because this is all
they see advertised.
One of the comments I have
heard dealer's make who carried
ATARI but were dropping the line
is lack of support or slow delivery
of orders. One dealer here in
Charleston said he thought that if
you carried several other
competitive systems you did not
get the support from ATARI.
Again the image problem appears.
ATARI is not an Apple nor a
TRS-80. The personal computer
market is now flooding with
choices. I believe ATARI is
missing the chance to grab the bull
by the horns and become iden-
tified as the "Home Computer".
Most of the current systems are
really personal computers de-
signed to be sold first as a aid to
business with home applications
being secondary. The new Com-
modore and the Zenith (among)
others) are truly small business
systems being sold as personal
computers. Witness IBM PC, the
"Cadillac," is not advertised as an
entertainment system. The answer
lies with ATARI. We as owner's
can brag, show off our system and
have the best of each world, but if
the image problem is not reversed
the rest of the industry will leave
ATARI behind.
Thank goodness for the third
party software. I have watched
ATARI drop what I thought
would have been a good product
line not to mention the software
which is really where profit comes
from.
I believe ATARI needs to
correct an image problem and
then market the "Home Com-
puter" as an answer to those
out there who don't want a
business system. Comparison of
the cost alone for the true home
user should sell ATARI if it were
marketed properly.
Thanks for listening.
Sincerely,
Martin T. Foley
Moncks Corner,
South Carolina
Editor:
Your "Whither ATARI?"
editorial in issue #9 was an act of
courage. You risked advertising
revenues and support from
ATARI'S parent, Warner Com-
munications, by asking the
important question: "WTiy is
ATARI trying to sell and support
their wonderful 400/800 home
computers like throwaway toys?"
That's a question troubling most
all of us faithful ATARI computer
users.
Early in December, Wall Street
investors revolted against
Warner's stock when news leaked
that ATARI had lost its sales lead
in the home computer market and
was in danger of losing its near-
total domination of the home
video game market as well. While
Warner pointed its finger to its
errant ATARI Division as the
culprit for a disappointing
earnings statement, the true focus
of both Warner's overall and
ATARI'S specific problems
should have been aimed at the
boardroom of Warner itself.
When Warner Communica-
tions purchased ATARI a few
years ago, Warner had no real
experience in marketing high
technology products. Warner's
holdings in the movie, TV and
recording industries naturally
make them entertainment special-
ists, and with ATARI producing
the hottest new wave in entertain-
ment, video games, it seemed a
natural fit as another cog in their
corporate wheel. But since the
merger, ATARI has grown so fast
and so large that it has become too
complex for Warner's show-biz
moguls to handle. Warner's
control of ATARI is analogous to
an old Douglas DC-3 pilot being
given command of a Concorde.
Warner's installation of the
Harvard Business School type of
corporate political structure at
ATARI marked the beginning of
their problems with the division.
Creative design and software
engineers who were weaned on
Nolan Bushnell's entrepre-
neurial spirit at the old ATARI
chafed under the new Warner-
installed regimen of MBA
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 9
executives, committee decisions
and anything-for-the-bottom-line
philosophy at the new ATARI.
Many of them departed to form
new companies or joined com-
petitors. Some of the better
engineer-businessmen from
ATARI went on to form formid-
ible competitors to their former
employer such as Activision and
Imagic.
Warner's answer to the burning
question, "How do you market a
home computer or video game to
Mr. & Mrs. Average?", was in the
form of mass marketing. And to
implement this mass marketing
program, ATARI replaced
their key marketing executives
with men from the toy and
cosmetic industries rather than
those who were experienced in
selling consumer electronics.
These "new brooms" quickly
landed deals with major retailers
like Sears, Toys-R-Us and K-Mart
during the Summer. But to make
these deals, ATARI had to give
contract pricing to the big retailers
that was well below the costs
offered to ATARI'S computer
specialty dealers. Naturally, when
Toys-R-Us can sell an ATARI 400
for less than XYZ Computer
Center can buy it, XYZ would
have to drop the ATARI line or go
out of business. Thanks to
ATARI'S mass market programs,
dealers from coast to coast
dropped the ATARI line and
began to bad-mouth it due to the
bitterness of being cut out by
ATARI. What ATARI'S market
managers didn't figure, however,
was that while they were signing
up the big retailers, so were their
competitors, Commodore and
Texas Instruments. Since Com-
modore and TI are both vertically
integrated, they had no problem
bombing the ATARI prices.
ATARI, meanwhile had to
sit back and attempt to sell the
400 home computer with a $50
handicap against their key com-
petitors due to the video game
groups' insistence that the too-
late and over-priced 5200 Super
Video Game System needed to
occupy the $200 price slot. The
fruits of this mass market effort
have been bitter for ATARI.
Before the Fall of 1982, ATARI
led the home computer market,
but today, (December 21, 1982),
ELECTRONIC NEWS reported
that ATARI had fallen into third
place and even that position was
in danger with Radio Shack
coming up strong recently. For
their efforts, the marketing
executives and president of
ATARI were recently terminated.
The damage those executives did
to ATARI'S sales and support
network still will require much
effort to correct, however.
**Warner's control
of ATARI is anal'
ogous to an old
Douglas DC-3
pilot being given
command of a
Concorde*"
For all of its faults, however,
ATARI has the best supported
home computer on the market.
ATARI'S APEX program is
unique in that it allows the
400/800 users an opportunity to
provide software support for their
systems without having to go in
business for themselves to do so.
TI, Radio Shack and Commodore
have no current program such as
APEX. ATARI has done a good
job of setting up service centers at
most major cities, important
support that the other companies
are lagging in. ATARI has also
cooperated with the third party
suppliers of software, accessories
and books for their computers in
a manner similar to market-
leader, Apple. Third party
support is just in its infancy for
ATARI'S competitors, however.
On the marketing scene,
ATARI will be dropping prices on
all of their current home
computer models and offering
new models, such as the 1200XL,
to boot. ATARI is also going to try
to re-woo the specialty computer
dealers with fairer margins and
better support in 1983.
From appearances, ATARI and
parent Warner have learned a
hard lesson in the high-tech
consumer electronics business:
computers are not toys. Let us
hope that they will return to being
a technologically-driven, rather
than a market-driven company in
the future and that ATARI will
graduate their excellent home
computers from a stormy adoles-
cence to a stable maturity. With
over 750,000 users of the ATARI
400/800 among us and excellent
magazines like A.N.A.L.O.G. to
act as sounding boards, I'm cer-
tain that Warner and ATARI will
get the message and give us the
support and products we want
and need in the future.
Sincerely,
J.T. Irby
Orlando, Florida
Dear Editor:
Your editorial in issue #9 was
straight to the point and ironic in
view of current events. The New
York Times of 12/19 reported
that ATARI is plagued by manage-
ment turnover, disappointing
game cartridge sales and an un-
profitable computer division. It
seems that ATARI really doesn't
understand the home computers
it is trying to create and is unpre-
pared to compete now that they
aren't the only GAME in town.
The December issue of Datama-
tion magazine related an inter-
esting picture of R &l D at ATARI
with a budget between sixty and
one-hundred million dollars, an
innovative chief scientist, an
educational research institute, a
lab to work on LOGO research
and even a consultant in AI. I
don't know about you but I think
that this kind of effort should pay
off with something more than just
game software. Something is
wrong.
PAGE 10
A.N.A.L.O.G. COMPUTING
ISSUE 10
Your points were well taken
especially about education, user
support and marketing. I do some
part-time work for a local com-
puter sales company and we no
longer carry ATARI. Why?
Because of the discounting of
local video stores and mail order,
it is not profitable to sell ATARI
and provide support. ATARI
seems to think user groups are the
total answer but they aren't.
Unfortunately people go for the
low price and then realize too late
that they need support in the form
of advice and information. Every-
one I have talked to wants a
computer for their children. They
are interested in education for
their children as a very high
priority and not only in games.
A particularly annoying
indication, at least to me, that
ATARI does not take computer
software seriously is the Macro-
assembler. It costs almost $100
and yet there is no way to buy a
backup diskette and it doesn't
even come with a center hole rein-
forcement. Games costing $30
always have the reinforcements
and sometimes the backup
availability. It may sound like a
small point until you accidentally
spill milk or something on your
disk and have to pay full price for
a "backup" of expensive
software.
ATARI'S forte (for the VCS)
has thus far been games but Acti-
vision, Mattel et al have produced
game cartridges with much better
graphics for the 2600 than ATARI
has and as I have said ATARI is
hurting because of it. It seems that
cartridge sales account for the
bulk of game machine profits.
ATARI is heading for the same
situation in serious computer
software. Perhaps if A.N. A.L.O.G.
surveyed its subscribers and made
the results known to ATARI the
problems would be brought to
their attention and improvements
would follow.
Sincerely,
Jordan Powell
Carmel, New York
Dear Sirs,
This article was long overdue. I
agree with it 100%, but I'm not
sure who's to blame. We, the user,
guide ATARI by our buying
habits. If we show that we will buy
more games than Educational or
Utility programs then that will be
the direction ATARI will take.
When the first Home Com-
puter hit the market the best
way to show it off and get the
public's attention was with a
game, such as Star Raiders, and it
did the trick. After Star Raiders
came Space Invaders and so on,
but soon after playing these games
the hobbyist found the real
purpose of the computer, and
started to write his own programs.
**With ATARI
putting out
more games and
limited types of
utility programs,
ATARI went
from Home
Computer to
Game
Computer/*
The problem is ATARI saw the
money in games and started to
redirect their thinking and leave
the utility programs to third
parties. With ATARI putting out
more games, and limited types of
Utility programs, ATARI went
from Home Computer to game
Computer.
We now have to correct this
error, and your article "Whither
ATARI" is the first step, but it
can't stop there. We have to let
ATARI know by writing to their
Marketing Dept., telling them
what we want to see from them.
We, the buyer, have to guide
them.
Now is the time to get our act
together. Maybe you could get the
correct name and address of
ATARI for your readers to write
to with their ideas. If we don't let
them know then we have nobody
to blame but ourselves.
Sincerely yours,
Philip Diedeman
Phoenix, Maryland
Dear Sir:
Your editorial in issue #9 ex-
pressed my long-felt opinions
very well. After purchasing an
ATARI 800 over a year ago for use
in my home, I've agonized
awaiting ATARI to release non-
game software but was relieved
when they finally released
hardware information to third
party developers. Now all ATARI
users must wait for these firms to
develop software that fills the gaps
in Educational, Word Processing,
Personal Finance, DB Manage-
ment and Telecommunications.
The efforts made by ATARI in
these fields is less than first class
and thus many users feel this
reflects on ATARI hardware as
well.
You question the marketing
strategy and I'd like to share some
questions and possible actions
with you. ATARI has many
resources, not the least of which is
name recognition. We're seeing
the retail price of hardware falling
to under $600 for the ATARI
800. As ATARI struggles for
market share, I wish they'd
consider package enhancement
instead of reduced prices.
As "Computers for People"
enter more homes, I believe many
will refrain from purchasing today
as prices will be lower later. Many
remember the calculator price
shake out. Now that these
households see little quality
software outside of games, they
have little motivation to buy
today. Developers of non-game
software also feel less urgency in
positioning their products. The
ATARI name recognition will
keep the public very aware of
these price changes.
Access Drives for the Atari®— Why settle for less!
GET THE MOST OUT OF YOUR ATARtCOMPUTER.
GET AN ACCESS UNLIMITED MINI-DISK DRIVE.
Store twice as much information
With an Access Unlimited drive, you can store almost twice as mucti
intormation on a diskette as you can witti an Atari 810™
Our system has double-density storage. Which lets you store system
and application programs on one diskette and still have room for data files.
You save $$
You save on the cost of diskettes — because you don't need as many.
You may also need fewer disk drives because our Access drives are
double-density and, unlike the Atari 810, our controller can handle up to
4 drives.
Furthermore, our add-on drives do not require Iheir own controllers.
They're less complicated. They cost less. And they're more reliable.
Now Available!
Access single density drives. 102k storage but much cooler, quieter
and more efficient than the 810!
Enjoy more flexibility
Our flexible drives let you cable your first-drive
computer. Or go through an 810 drive.
And our Access controllers automatically
density drives in the same system.
Order today.
Satisfaction guaranteed.
ATAR88-1
ATAR88-A1
ATAR40-1
ATAR40A1
ATARISEP
SPECIALS
Fllp-N-File — holds 50 diskettes
first drive single density
Add on drive single density
First drive double density
Add on drive double density
system directly into your
handle single- and double-
$488.00
$379.95
$624.95
$399.95
$24.95
5'/."
Head Cleaning Kil
Green Screen
Drive Numbering Tabs
Reg. $34.95
Reg. $49.95
Reg. $29.95
Reg. $24.95
Reg. $4.50
Library Cases Holds 10 Diskettes
Now only $19.95
Now only $28.95
Now only $19.95
Now only $12.95
Now only $3.95
Now only $2.95 ea
We have just added approximately $250,000
worth of brand new business and game software.
New! SVa" Soft Sector Diskettes W/Hub Ring
BASF Lifetime Limited Warranty Discs. SSDD S2490 Box of 10
ATHANA 1 yr Limited Warranty Discs. SSSD $1990 Box of 10
To order, call TOLL-FREE
1 (800) 527-3475
Ordering Information
Order by phone or by mail. We accept Visa, MasterCard, cashier's checks,
certified checks, and money orders. With personal checks, allow additional
time for bank clearance. Your bankcard will not be charged until your order is
shipped. On orders over $1,000, we pay freight (surface only) and insurance;
please add $3.00 shipping and handling under 50 lbs. Over 50 lbs., add $5.0C
for orders under $1,000.00. Texas residents add 5% sales tax. Allow 2 to 4
weeks for delivery
LIMITED QUANTITIES • Prices subject to change without notice.
D Please send me a FREE catalog. I'm not ready to order al this time
D YES, I'm taking advantage of your Sales prices.
Name
Company Name .
Address
City
. State .
Phone Number!
Quantity
Item
Unit Price
Subtotal
Subtotal
State Sales Tax (Texas residents only)
handling charge
Check one: Total
□ payment enclosed D Visa G tvlasterCard'
'If Ivlasterr.ard niimhers ahnve name'
Expiration Date: ~^
Authorized signature, if charged
ACCESS UNLIMITED
Dept.G2/401 N. Central Expwy #600/Richardson, Texas 75080
Tel 1-800/527-3475 214/340-5366
214/690-0207 Sat. and Evenings Only
PAGE 12
A.N.A.L.O.G. COMPUTING
ISSUE 10
Whatcould be done? Prices are
lowered due to decreased costs.
Less resistance would occur had
ATARI included more "optional"
hardware with the ATARI 800
package. Suggested items would
be: Pilot Home Package, Enter-
tainer Kit, Educator Kit or 850
Interface. By adding any of these
items to product would be
enhanced and the selling price
would not need to drop. The
customer would not see
successive price reductions and
thus would purchase more readily
based on desire to satisfy need.
What could be done to allow
home users to upgrade? Why not
give $75 credit toward the pur-
chase of a 1200XL or 800 from a
dealer with the trade-in of a 400?
Then ATARI, via Warner, could
place them in cable households in
the vein of the Qube experiment
in Columbus, Ohio. Or the trade-
in units could be donated to
schools at a break even expense to
ATARI considering tax benefits
and the "cost" of the trade-ins.
This would place more units in
front of more users and help
enhance the "education" image
for ATARI — not at the expense
of the "game" image.
Regardless of the marketing
strategy eventually chosen, I hope
ATARI soon develops superior
non-game software to compli-
ment their machines and game
software. Many households
already have ATARI VCS game
systems and more purchase them
every day. Does ATARI really feel
a household will pay $600 for a
second game machine? Isn't there
enough competition in the home
arcade industry without ATARI
competing with itself?
Robin Lynch
Mundelein, Illinois
Dear Sirs:
I couldn't help but grin when
reading your editorial in
A.N.A.L.O.G. #9.
Slightly over two years ago, I
purchased a TRS-80 Color
Computer from Radio Shack. I
quickly learned BASIC, Extended
BASIC, and updated the memory
to 32K. I waited and waited for
the software to come out, only to
be rewarded with Dinowars and a
whole list of second-rate games.
Tandy's marketing policy targeted
the computer as a game machine,
but the users knew differently —
they knew it was a machine far
more capable than its makers gave
it credit for.
Eventually, frustrations were
eased by the products from third-
party software vendors who
developed everything from word
processors, data bases and utility
packages, to much-improved
high-resolution action games. It
was finally becoming a
worthwhile investment, but no
thanks to Tandy.
Although the machine
improved in its capabilities, I
never could resist the lure of the
ATARI 800. In December, I
plucked down a lot of money for
the system with disk drive, and
was thrilled that there was so
much software to choose from. I
gave the TRS-80 to my parents
with their new-found interest in
home computers.
The irony, of course, is that the
A.N.A.L.O.G. editorial speaks
of the same problem. Different
computer, different corporation,
same problem. The solution is
simple: don't look to ATARI for
the answers. The good software
will result from two things,
namely third-party software
companies and user demand.
Furthermore, the scenario is
typical of many home computer
products. We are not alone.
The fact is, any business
application, peripheral device or
expansion capability that can be
conceived of will most likely be
done, especially if there is a
demand for it. I imagine there will
be numeric keypads, Z-80's,
CP/M systems and who-knows-
what available for our favorite
computer before too long.
As a matter of fact, I'm writing
this letter on a system utilizing Bit
3's 80-column board, a green
phosphor monitor and Letter
Perfect word processor. It's
enough to make many Apple
users a little bit envious.
So, I have a few things to be
grinning about.
And don't worry whether
ATARI thinks they've got a
"machine in a box." The serious
software is out there.
You just have to know where to
look.
Sincerely,
Bob Safir
Los Angeles, CA
Dear Editor:
We note the reference in your
editorial in Issue 9 to the ATARI
"Talk &. Teach" system. Dorsett
Educational Systems, Inc.,
developed this system in 1975,
patented it, and in 1977 licensed
ATARI to use it. We later
developed 1024 half-hour tutorial
program titles, contained in 64
courses of 16 audiovisual
programs each, far in excess of the
number for any other computer.
It is perhaps more tutorial pro-
grams, (exclusive of drills, tests,
games and simulations) than exist
for all other computers, combined.
ATARI released only 256 of
our titles, contained in 16 courses
(Algebra, Spelling, Psychology,
Sociology, Economics, Ac-
counting, Electricity, U.S.
History, World History, U.S.
Government, Supervision,
Writing, Physics, Counseling and
Classics). We now sell these
courses, plus Electronics (48
programs). First Aid and Safety,
Spanish, Health Services, Office
Careers, Philosophy, Auto
Mechanics, Construction, Car-
pentry, Shop, Statistics, and
hundreds of Reading Compre-
hension, Reading Development,
Vocabulary Building, ESL,
Phonics, and Math programs,
each of which runs up to a half
hour, and has full-time
professional, high-quality
recorded narration. We are
unable to agree that for the
ATARI computers, as you claim.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 13
"quality educational software is in
short supply."
ATARI apparently agreed with
you that the "Talk and Teach"
programs "didn't sell", since they
sold the rights for them back to us
nearly two years ago. But their
royalty statement to me discloses
that they had already sold more
than 600,000 program copies
packaged in 38,000 series. Not
bad for something that "didn't
sell" and which was returned at a
time when 80% of the ATARPs
now being used did not exist. We
hope to supply courseware in
increasing quantity.
But there are problems with
"Talk and Teach" programs.
They are first-generation, so
graphics are simple, although
often clever and colorful. Special
visual efforts are infrequent,
although all text is in upper and
lower case. Particularly important
is the fact that computer
hobbyists will miss complex
branching and string responses.
Responses are all multiple-choice,
and branching, when used, is
simple. It is not easy to make
illegal copies.
Most important, the tutorial
mode actually attempts to teach,
which means that after going
through programs two or three
times you are through with them,
as compared to games or
simulations, which can provide
more extended interest to those
who already know the subject.
Many educators prefer to
introduce information by non-
computer means and use the
computer as reinforcement.
Tutorial programs may have more
appeal for home self-study.
Sincerely,
Loyd G. Dorsett
President
Dorsett Educational
Systems Inc.
Norman, OK
Gentlemen:
Here I sit at the console of my
ATARI 400, having just finished a
productive and (through no
choice of mine) lengthy pro-
gramming session. I have decided
to announce the big error.
This letter is being sent to four
major magazines for personal
computers in the hope that we can
avoid any more BASIC cartridge-
sized holes in the wall.
A "lock-up" is a painful
experience, as it prevents any
communicadon with the com-
puter whatsoever. There are
many ways to produce a lock-up,
such as Print A = Not B. Try it.
Then enter from tape or disk
(after rebooting) a long BASIC
program. Now the tricky part:
type a line number near the
beginning of your file. With your
finger on BREAK, push
RETURN immediately followed
by depression of the BREAK Key.
4 out of 5 times, odds enhanced
by long sessions of unsaved
programming, the machine will
allow entry of input but not
respond.
Great fun, eh?
It this ever happens to you,
don't get mad, just take it in stride
(while sweeping cartridge pieces
away). It's happened before, it
will happen again and until
300,000 rude letters to Warner
Communications cause them to
correct the defect, will continue to
happen throughout eternity.
Sean Puckett
Homestead, Florida
Dear A.N.A.L.O.G.,
Game programming can be re-
warding, but moving the players
up and down in BASIC is too
slow. Since I do not know how to
program in Assembly language,
would you produce a machine
language subroutine that I can call
up from BASIC to move players
up and down fast?
Thank you very much for your
attention.
Yours truly,
Long Mai
Salt Lake City, UT
No problem. Check out "Moving
Players in BASIC," page 73.
—Ed.
Sirs,
Is it possible to CLOAD or
CSAVE a program, but not have
that shrill beep?
The cassette (or disk) Input-output
beeping can be turned on or off at any
time. To turn the sounds off, use the
command POKE 65,0. To turn them
on again, POKE 65,3.
—TH
B stoks
We've
Got
Software
Free Catalog Available
A TARI is a registered trademark
of ATARI, INC.
P.O. BOX 21 828
DENVER, COLORADO 80221
"Your Discount Software Store"
Orderline: (303) 431-6598
*N*LOC CQHm.VC
•M-I'T-LI. '
71 „„,.,
^^ »l-HontMy ( (, tl«. p« ye.r.
(12.00
HUK.,l J. D„ Ch,n«. Hi H,.n S.r„t. Ch.rr, V.ll.y MA 01611
Jen Brll, S6) n.ln S[r»H. Chrrr, V.U.V. HA 01*11
||^;.._.:p:^--^_...^;^-_^;i^_r^^^^
.HMm.On^hnil....,lnrL..^^
^^^..ln.r..„,rh..r,v.l1.,.mn.M.
■^■"- ™«.,.-,.«.™_
nun^,^. ,>.. ,. jf^i^s-;^, ^-:J;:'^a.-'^ga^
□ ;:;.«._._,« ^^„ _,« ,„.
,.,„,«=„„-.,„„™..„o. 1 KlS'SV.SJKaiK-
£iS%K^g^^S.R?'H
. .o,.c«™«..,«-_._, 1 1) 000
;i Doo
' ;"£i':s:^':;i,„ ^™,~— ___-.
10,500
IB ;oo
Z 200
s oaj
C .DT....,po«>„A„=_,„.„„.„,„„
11.700
11 283
" i2J.'j;'ri2i;2:;.*r,5*,"iST.i'.'?4i'St»"'
tl
no
'■ — — ~— .
„
o.o...,v— .,„_,-,_.«„„ ..,
,3 go-
u-r.^::;:r=rtx^ [>| ^.^7<7^ c%.. "* " I
».^
—I-
PAGE 14
A.N.A.L.O.G. COMPUTING
ISSUE 10
NEW
• »
by The Program Doctors
The ATARI home computer market continues its
explosion as almost every "home" computer
software company is now either converting or
designing new software for the 400/800. With all
the outside competition, ATARI is finally realizing
that it must begin to meet the challenge head-on both
in price decreases and an increase in the frequency of
software releases. With the recent announcement of
a $499 full retail 48K 800 (minus a BASIC
cartridge), ATARI is clashing directly with the
Commodore 64. Along with this our sources
indicate that 810 drives will also be dropping in cost
probably to combat the challenge from both Percom
and Micro-Mainframe drives which retail for much
less than the 810. ATARI rushed out DEFENDER
and GALAXIAN for Christmas and neither match
up to their arcade counterparts. DEFENDER (a true
16K cartridge) lacks the superb graphics of the
original Williams classic. Although the game is a lot
of fun to play it lacks that arcade "feel."
GALAXIAN does not even come close to the
Midway classic in either playability or screen display
(and is really not that much fun to play. ) The ATARI
consumers are constantly upgrading their 400's;
more and more people are also adding drives and
playing such outstanding computer games as
CHOPLIFTER, BANDITS and POOL 1.5. These
people are not satisfied by "licensed arcade releases"
in ROM packs. To satisfy the evergrowing "purist",
ATARI should take a hint from the third party
vendors and begin releasing these titles in both a
ROM version and a more enhanced disk version (ala
Roklan).
Ag-eo
■» a*r' as s*tf ■» -mr. «■ ;»r
•SS^ -Mr ^ -Sfe ■ '^ ■*; ^3*^ -*■
iSe- rSKt *■■ '«•*.'«•
GALAXIAN
Back in the early days of A.N.A.L.O.G. there
was an original program entitled "Maze Rider".
Essentially this was a three-dimensional maze game
and definitely an A.N.A.L.O.G. "classic." This idea
was expounded uponliy P.D.I, in CAPTIVITY and
EPYX with MONSTER MAZE. The 3-D concept
has been taken to the ultimate experience by Sirius in
WAYOUT. This 48K game consists of 26 different
mazes which provide hours of fun and frustration
and demonstrates the superb graphics and animation
which can be programmed into this marvelous
machine. As you attempt to find the WAYOUT you
see and feel the depth in the maze as you travel about
with your compass and map maker. As in all games
there is a villain and in WAYOUT it is "Cleptangle,"
a mischievous pirate that steals your exploration
equipment and leads you astray. This game has a
great scoring system which allows for many replays
within the same maze, since it is based on the distance
traveled through the maze. A floppy record is
provided to maintain high or in this case low scores
on the disk for each of the 26 mazes. On a lower note
from Sirius is its release of all the VCS cartridges for
the 400/800, FAST EDDIE, TURMOIL, DEADLY
DUCKS, WORM WAR and BEANY BOPPER. To
say that these are 4K cartridges should be enough to
the average A.N.A.L.O.G. reader, but to be more
specific, let your VCS buddies buy these cartridges.
Everybody likes to say that they own real arcade
titles like FROGGER and MISSILE COMMAND,
but sometimes these translations are not true to the
originals. One company that is attempting to
reproduce authenic arcade games is Roklan
Software. Its first release was DELUXE
INVADERS, an excellent translation from the
Midway classic. Now comes WIZARD OF WOR
and GORF, also licensed from Midway in both disk
versions and ROM packs. WIZARD OF WOR, a
personal favorite of the Program Doctors, is
complete with hi-res graphics, arcade-like sounds,
and interactive play. As you enter the "Dungeons of
Wor", your mission is to rid the Dungeon of all the
evil "Worlings", destroy the speedy "Worluk", and
meet the mighty "Wizard" himself. Some of the
"Wizard's Worlings" have the ability to disappear
and therefore to aid in your search a radar screen is
provided for tracking purposes. When you
successfully survive a "dungeon" you are
confronted with a better-protected one. Also, the
time before the "Wizard's" cronies speed up their
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 15
defense of their "lair" is decreased and there are
more enemies to destroy. In the interactive two-
player version, both players compete at the same
time either as partners or opponents. This really is
the best feature of the game. WIZARD OF WOR is
an arcader's delight and definitely a must for the
game enthusiast. The disk version has more spruced-
up sounds and a fine high-score save feature. GORF,
the most popular of Midway's trio released by
Roklan, does not excite as much as their previous
two games. This could be due to the tremendous
amount of quality arcade games on the computer
market already. Although it was unique in its original
issue as a multi-screen arcade game, GORF is not as
well-received as it might have been had it been
released a year ago.
WIZARD OF WOR
GORF
Many software purchasers are influenced by full
page 4-color advertisements in computer magazines.
Often times the best thing about these programs is
the cover art. A program that does live up to its 4
month media hype is First Star's ASTRO CHASE.
From the time you see the title page and the one-
voice opening theme (this was to preserve memory)
you can tell this is something special. Currently
available on 32K disk and tape, the scenario is a
SYPFAD (for the new readers "SAVE YOUR
PLANET FROM ABSOLUTE DESTRUCTION. ' ' )
Graphically speaking this game has everything, and
the periodic sideshows are well done and quite
humorous. "THERE IS NO ESCAPE" to this game
but it sure is a lot of fun trying.
ASTRO CHASE
Adventure International has been writing for the
400/800 from its conception in 1979 and is quickly
climbing to the top of the ATARI computer software
industry. AI has followed its largest selling software
program written for any computer, PREPPIE, with
three new arcade titles. SEA DRAGON (written by
Russ Wetmore, author of PREPPIE), is a multi-
screened underwater game which not only requires
skill but also patience as you navigate your
submarine through a plethora of obstacles in an
attempt to destroy the "Master Mine." This game
receives the Program Doctors first "Seal of
Approval" awarded only to computer games which
contain everything a great arcade game should have:
1. Multi-level option
2. Great graphics, sounds, and game logic
3. Real-time play ability
4. A save Hi-score to disk option (32K disk
version only)
5. Multi-screens
6. An attainable ending (nobody says it has to be
easy)
7. A repeatability factor (or lack of boredom
factor)
8. An availability on both disk or cassette ( 16K in
this case) so all of us can enjoy the game
Obviously we like this game very much and highly
recommend it, and suggest when you play it to try to
use the joystick in as many ways as possible; you may
find some hidden surprises.
AI has not stopped here. They have released two
other arcade titles, STRATOS, a nice extension to
the MISSILE COMMAND genre; and BUG OFF, a
frantic game for you people who love to kill bugs
instead of spaceships. For the adventurer both
PAGE 16
A.N.A.L.O.G. COMPUTING
ISSUE 10
ADVENTURELAND and PIRATE ADVENTURE
are now available in 48K graphic versions and are
unique both in animation and perspective, and the
S.A.G.A. Series shows great promise. This company
is not only offering support in these two areas but
also in utility packages with DISKEY.a disk editor
that allows you to do everything you wanted to do to
your disks but were afraid to try, and BASIC
ROUTINES FOR THE ATARI, by Jerry White,
containing 24 basic programs to aid in programming
in such areas as paddles, joysticks, timer, common
subroutines, p/m graphics, sounds, disk utilities,
etc..
HiGH SCSRE 2 Uf
2 HP A
SEADRAGON
-,.^,-^,, ..^.. ^ ,..^,,ber; 1 "HC-VEHTURELftN&'
In thi-s ft d venture you're to fjrid
*TPEH5UftES« & Store the« away, T*
' - / well you're' doina say;
■'zmmmmr
Pinball simulations are big sellers for home
computers and SubLogic has finally converted
NIGHT MISSION for the ATARI. With its first
ATARI arcade release SubLogic has attempted to
recreate the actual feeling of playing pinball. From
the time you insert your first quarter you begin to
feel that this is different from other pinball
simulations. NIGHT MISSION is user-adjustable,
and therefore if you do not like the SubLogic version
you can redesign it to suit your taste. Although you
cannot modify the playfield itself you can adjust
such things as ball speed, friction, inclination,
bumper sensitivity, free game match probability, and
free game score. These adjustable parameters allow
you to customize NIGHT MISSION just the way you
like it. The only drawback to this game is that the
sounds come out of the speaker, and before you get
annoyed, this was done for memory considerations
and that old computer proverb "you don't mess with
success", since the original was written for our good
micro-buddy, the (burp) Apple.
S.A.G.A. #1
NIGHT MISSION
As the software companies pulled out all the stops
for Christmas a multitude of new titles were
released, including two games which will satisfy that
QIX fix until the original is released by ATARI. KID
GRID and JEEPERS CREEPERS are based on the
"surround-the-box-before-they-get-you premise".
Both are fun arcade games with addictive qualities.
For all you "Forth Funatics", JEEPERS CREEPERS
is written in QS FORTH by Quality Software on
both disk and cassette. On the other hand Tronix (a
new kid on the block) developed KID GRID, a real
sleeper on both 16K tape and disk.
Just when we were about to write off Gebelli and
give it the "Crystalware Award of the Year" prize,
CANDY FACTORY, a 32K disk, comes to the
rescue. Those of you who have been "burned" by
this company in the past can be confident when you
get this good climbing game. Unlike CANYON
CLIMBER this game has "staying power". It has 10
different screens that will definitely bring out the
Spiderman in you. Unfortunately we must warn you
to stay away from their two cartridges, the 4K
FIREBIRD and EMBARGO; your software dollar
can be much better spent.
JEEPERS CREEPERS
KID GRID
Before we close, the Program Doctors have one
other new program to talk to you about. It is rather
hard to do since a definite conflict of interest is
apparent. We do not work in the offices of
A.N.A.L. O.G. and have never even personally met
one of our two editors, nor do we need the income
derived from writing this bimonthly column. Our
job is only to inform you, the software purchaser, of
the products on the market. Therefore, hoping we
have maintained our editorial integrity, we must tell
you that A.N.A.L.O.G. Software has a definite
winner with its latest release, BURIED BUCKS by
Tom Hudson. Providing 99 levels of play, this
original game requires speed and skill. The player
uses a helicopter to dive-bomb holes into the earth
and then delve inside these same deep caverns to pick
up the money and run (or in this case fly) to safety.
The nemesis in the action is a plane that keeps on
coming to refill the earth channels your chopper has
made. Available on both 16K tape and disk, for one
or two players, this game is done rather well.
By next issue, we should have new, massive
amounts of information for you, so until then, keep
those cards and letters coming. D
DISK WIZARD
A COMPLETE DISK UTILITY PACKAGE AT AN
AFFORDABLE PRICE
THIS COMPREHENSIVE PACKAGE INCLUDES THE FOLLOWING POWERFUL
PROGRAMS FOR THE ATARI- 800 COMPUTER (MINIMUM; 32 K)
DISK BACK-UP
• SINGLE / DOUBLE DENSITY
• SUPPORTS 1 OR 2 DRIVES
• ALLOWS BACK-UP OF DISKS
PROTECTED BY BAD SECTORING
• FAST COPY OPTION
• SECTOR STATUS SUMMARY
DISASSEMBLER
■ DISASSEMBLE FROM DISK BY
FILE NAME OR SECTOR NUMBERS
* OPTIONAL OFFSET
• OUTPUT TO SCREEN OR PRINTER
DISK EDIT
• REVIEW / MODIFY ANY SECTOR
• WORKS WITH ALL FORMATS
» SINGLE / DOUBLE DENSITY
• SCAN SECTORS FOR A SERIES
OF BYTES OR A STRING
• DECIMAL / HEX NUMBER CONVERSION
DISK SPEED
COMPREHENSIVE MANUAL INCLUDED
$29
ORDERING INFORMATION
For fast delivery, send cerlified
check or money order. Personal
checks: allow 2 to 3 weeks.
MASTERCARD & VISA accepted.
(Maine Residents add 5% Sales Tax)
Phone orders accepted on C.O.D.
and charges.
•ATARI is a registered Trademark of Atari, Inc.
95
69 NEW BOSTON ROAD
YORK, MAINE 03909
(207) 363-3036 or
(207) 384-5068
THE ULTIMATE IN COPY PROTECTION FOR ATARI" SOFTWARE
NOW YOU CAN PROTECT YOUR SOFTWARE FROM UNSCRUPULOUS piRATCC
ATARI° SOFTXA/ARE
PROTECTIOIM TECHNIQUES
thoroughly explains the copy techniques used by advanced soft-
ware pirates. YOU can avoid the common protection pitfalls with
instruction in the state of the art of software protection schemes.
This HOW-TO BOOK & PROGRAM includes:
3^8.95*
for book and disk
software
$nS.9S*
tor book only
HIDING DISK DIRECTORIES
WRITING BAD SECTORS
MISASSIGNING SECTORS
(CUSTOM FORMATTING)
HARDWARE DATA-KEYS
EPROM & ROM CARTRIDGES
DISK PACK^OOO
THIS DISK UTILITY
PACKAGE CONTAINS:
ULTIMEIMU -Ttie ultimate in userfriendly disk menus. Put on a disk and this self
booting program displays all files and automafioally runs the one
you select. IT euen runs most BINARY LOAD FILES from basic.
BACK- A- DISK- Lets you back up almost anything with SECTOR-COPIER &
BAD SECTOR WRITER.
DISKTIME - Its a disk timer that graphically shows disk's RPI^'s.
SCREEIM OUMPER - This allows you to transfer any graphic display to a disk,
then reproduce it anytime in seconds.
COLOR FIX- Helps adjust your TV to show the right colors and hues for your
computer.
This utility disk package for your Atari" is better ^ ^^^ '
than those costing 3 times the price, only SpHJiCliiaO
Send CHECK or MONEY ORDER to.
ALPHA SYSTEMS
4435 MAPLEPARK RD
STOW, OHIO, aasaa
Or charge to your MASTERCARD or VISA by calling.
CSiei 374-7453
Include $2.00 for shipping & handling /Ohio residents add efc* tax.
B
S
LPHA
Alaii IS a Irademack ot Watner Communications
YSTEMS
PAGE 18
A.N.A.L.O.G. COMPUTING
ISSUE 10
Software Review:
Wayout by Paul Edelstein
SIRIUS SOFTWARE
Sacramento, CA 95827
48K Disk $39.95
by Brian Moriarty
A few weeks ago, I came strolling into the offices
of A.N.A.L.O.G. to ask my favorite annoying
question, ""What's new?"
Editor Lee Pappas inimediately began tearing his
desk apart, looking for the latest marvel from Sirius
Software. As his frantic search continued, his eyes
began to redden, his breath heaving in quick, short
jerks like a junkie going cold turkey. Just as I began to
think it might be better to visit some other day,
Charles Bachand had the bad luck to walk through
the door. Lee grabbed Charlie by the throat (not an
easy task; Charlie stands d' 4') and hissed, "'Where's
Wayout? "
"Out in my car," poor Charlie croaked helplessly.
"Get it — now!"
The precious pre-release copy of the disk was
quickly booted, and I became another fan
mesmerized by one of the best microcomputer games
since Star Raiders. Wayout is really that good.
The idea of the game is simple. You've been
dropped into the middle of a complicated maze
which has exactly one exit. Armed only with a
compass and a map-making tool, you must find your
way out of the maze by the shortest possible route.
As you ""walk" through the maze (using either the
keyboard, a joystick or a paddle), you see a full-color
image of the maze as experienced from the inside.
The solid blue walls slip past with startling realism
and perspective. Both Charlie and Tom Hudson (no
strangers to assembly-language game programming)
were astonished by this nifty example of real-time
animation. The rest of us were dumbfounded.
26 ways to get hopelessly lost.
It wouldn't take very long to memorize the layout
of a single maze, even a big one, so Sirius provides no
less than 26 different mazes on the Wayout disk.
You can save a game-in-progress, record your best
score for each maze and even mark up to nine
locations in a given maze and return to any one of
them in a moment. This latter feature is essential to
mastering the game — but more on that later.
While admiring the graphics, you may notice little
dots of light flitting around the picture area. These
"bugs" in the program are actually fireflies, moving
around on the breeze that sometimes blows in from
the exit. You're supposed to let the fireflies help you
determine the location of the exit. After hours of
play, I can't say they've been very helpful.
Introducing . . . the Cleptangle!
The most sadistic feature of Wayout is the
Cleptangle (CLEPTomaniac RectANGLE). The
Cleptangle is the geometric equivalent of a purse
snatcher. He's also one of the most diabolical
computer personalities to emerge since the Thief in
Zork.
Visually, the Cleptangle appears as a spinning
rectangle, red on one side and white on the other. His
sole purpose in life is to make you miserable by
stealing your compass and/or mapmaker. The
compass is somewhat expendable, but the
mapmaker is absolutely essential to your success.
Consequently, if the Cleptangle runs off with your
mapmaker you must chase him down until he's
trapped in a corner or dead end. Then he'll give up
his prizes and go away — for a while.
The Cleptangle has a way of showing up just when
you're starting to make progress. He'll grab your
stuff and head straight for the area you just finished
exploring. Unless you use the save-position feature
mentioned earlier, you will go mad re-tracing your
steps after you catch up with the fiend.
A warbling tone indicates the presence (or blessed
absence) of the Cleptangle. A different sound is
heard when you come close to the exit, represented
by a rapidly flashing hole in the maze. In some mazes,
the wind coming out of the exit is so violent that you
can't get near it without blowing away. You'll have to
find some alternate path of approach.
Wayout is one of those rarities in ATARI games: a
good-looking product that actually manages to hold
your interest. Since I received my rare personal copy,
I've made my way through about a dozen of the
mazes. My scores have been pretty awful, but I'll be
going back to improve them after I finish numbers
13-26. In the meantime, we can hope that Sirius will
release additional Wayout mazes.
Paul Edelstein deserves stardom for his masterful
programming effort. When I'm showing off my
ATARI to friends, I don't automatically reach for
Star Raiders any more. D
SUPER SPECIALS
CHOPLIFTER
$22.95 DISK
K-RAZY SHOOT OUT
$31.95 CARTRIDGE
GENETIC DRIFT
$20.49 DISK/TAPE
STRATOS ^
$24.49 DISK/TAPE
\
SHOOTING ARCADE
$20.49 DISK/TAPE
BAJA buggies'
$22.49 DISK/TAPE
Prices effective March 1 through March 31, 1983
FREE* SOFTWARE
FREE* SLIK STIK
ATARI
CONVERSATIONAL
LANGUAGES -T 43.95
INVITATION TO
PROGRAMMING2&3 T ... 2L95
MUSIC COMPOSER ■ C 32.95
MY FIRST ALPHABET D ... 26.95
TOUCH TYPING T 19.95
HOME FILING MANAGER-D 37.95
MAILINGLIST-T 19.95
ASTEROIDS C 26.95
CAVERNS OF MARS - D 28,95
COMPUTER CHESS -C 26.95
MISSILE COMMAND -C .... 26.95
SUPER BREAKOUT ■ C 26.95
STAR RAIDERS ■ C 32,95
ASSEMBLY EDITOR C 44,95
BASIC C 44 95
MACROASSEMBLER ■' D ^ ' ' ' 65.95
MICROSOFT BASIC ■ D 65,95
PILOT (HOME PACKAGEI-C 58.95
INVITATION TO PROGRAMMING
IT 18.95
SPEED READING -T 55.95
BASKETBALL ■ C 26.95
GRAPH IT T 15.95
JUGGLE'S HOUSE D/T . . . . 22.95
PILOT (EDUCATOR) ■ C .... 97.95
VIDEO EASEL ■ C 26.95
DEFENDER -C 32.95
GALAXIAN-C 32.95
QIX-C 32.95
DIG DUG -C 32.95
ET - C 38.95
TIMEWISE-D 23.95
ATARIWRITERC 61.95
ADVENTURE INTERNATIONAL
PREPPIE-D/T 23,95
S,A.G.A, ADVENTURES -D . 31.95
SEA DRAGON D/T 27 95
STRATOS D/T 27.95
BUGOFF-D/T 23.95
ANALOG
RACE IN SPACE - D/T 20.95
CARNIVAL D, T 20.95
SUNDAY DRIVER - D/T 23.95
CRASH DIVE! - D/T 23.95
ON-LINE
JAWBREAKER D/T 23.95
ULTIMAI-D 31.95
THRESHOLD -D 31.95
ULTIMA II -D 44.95
MOUSKATTACK - D 27.95
FROGGER - D,/T 27.95
SIRIUS
BANDITSD 27.95
WAYOUTD 31.95
BEERRUND 23.95
THE DISCOUNT SOFTWARE
COMPANY THAT
PAYS YOU
A DIVIDEND!!!
*COUPON PROGRAM
The purchase of each program (with Ihe
exception of Super Specials, Atari, arid
APX) will earn you 1 COMPUT ABILITY
DIVIDEND COUPON, Saue 3 coupons
and redeem them for your choice of Sjilt
Stik, a Lefty Adaptor, or an Extension
Cable, OR save 10 coupons and redeem
them for your choice of any program we
sell for $24,00 or less (with the exception
of Super Specials, Atari, and APX). You
pay only a $2,50 shipping and handling
charge.
DATASOFT
SHOOTING ARCADE D'T . 23.95
PACIFIC COAST
HIGHWAY D/T 23.95
MICROPAINTER - D 27.95
C/\NYON CLIMBER ■ D/T . . . 23.95
FATHOMS FORTy D 27.95
O'RILEY'S MINE D/T 27,95
ROSEN'S BRIGADE D/T . . . 27.95
SANDS OF EGYPT D 31,95
BIG FIVE
COAL MINER 2049'ER Cart . 39.95
I.D.S.I.
POOL 1.5 D 27 95
POOL400-Cart 31.95
SPEEDWAY BLAST Cart ... 31.95
JUGGLER D 23.95
SURVIVAL OF THE
FITTEST Carl 31.95
FIRST STAR
ASTRO CHASE D/T 23.95
SENTIENT
CYBORG D 27.95
GOLD RUSH D/T 27.95
WE CARRY HUNDREDS OF ITEMS FOR ATARI 400/800, ASK FOR OUR FREE CATALOG.
Mxv-FightGr
The Ultimate Joystick
• 2 Year Warrantv
• More Accurate „ ^ ^^_
• Easier to Hold * 16.95
LEFTY JOYSTICK ADAPTOR
Adapts to an^i Atari Joystick. _ -^
Moves fire button to top Right. j7 .zft)
• 90 Day Warranty
• Easy Ball Top
Control
^^Siiiitf irn
EXTENSION CABLE (5 ft.)
Adapts to any Atari controller.
$9.95
$6.95
ALL JOYSTICKS WORK WITH Atari VCS, Sears Telcgame. Commodore VIC 20, Atari 400/800 (All products have registered trademarks)
30 Dav Money Back Guarantee on all Suncom Products - Dealers inquiries invited!!!
BRODERBUND
APPLE P/\NIC- D/T 23.95
STELLAR SHUTTLE - D/T . . . 23.95
DAVID'S MIDNIGHT
MAGIC -D 27.95
STAR BLAZER ■ D 25.50
TRACK ATTACK - D 23.95
LABYRINTH - D/T 23.95
SERPENTINE D 27.95
DUELING DIGITS - D 23.95
DEADLY SECRETS D 27.95
CHOPLIFTER -D 27,95
GENETIC DRIFT D/T 23.95
SPINNAKER
SNOOPER TROOPS #1-D... 35.95
SNOOPER TROOPS #2 D... 35.95
PACEMAKER - D 27.95
STORY MACHINE ■ D 27.95
EDU-FUN
CALL FOR ITEMS AND PRICES
THORN
CALL FOR ITEMS AND PRICES
NEW ITEMS
PIG PEN - D 23 95
BAJA BUGGIES ■ D/T 25.50
STARBOWL
FOOTBALL - D/T 25.50
MASTERTYPE-D 31.95
ALIBABA D 26.50
JEEPERS CREEPERS - D 23.95
PAINT - D 33.95
KIDGRIDD/T 23.95
MOSAIC 32K 97.95
D - Disk T - Cassette
C - Cartridge
ATARI is a trademark of ATARI, Inc.
Mastercard/VISA
Order Toll Free
800-558-0003
No surcharge for cretdit carids
VISA'
In Wise. Call
414/351-2007
Sat.
ORDERING INFORMATION
To order by mail senci money order, certified cfieck or personal check (allow 14 days to clear) to COMPUT ABILITY '^°"-
Include $2.00 shipping on software orders and $2.50 shipping on hardware orders (FREE OR PURCHASED). Master
card & VISA please include card number and expiration date. WI residents please add 5% sales tax. Outside of con
tinental U.S.A. please add 15% shipping (U.S. Funds only). Prices subject to change without notice.
Order Hours;
- Fri. 12 pm ■ 9 pm C.S.T,
12 pm - 5 pm C.S.T,
ComputAbiiity
P.O, Box 17882
Milwaukee, WI 53217
PAGE 20
A.N.A.L.O.G. COMPUTING
ISSUE 10
HARDWARE REVIEW:
B. KEY 400
INHOME SOFTWARE INC.
2485 Dunwin Drive, Unit 1
Mississauga, Ontario L5L 1T1
Telephone: (416) 828-0775
RETAIL: $119.95
by Richard A. Benson
What does someone who is 33 years old and still a
kid at heart ask Santa Claus for Christmas? What
else — a new keyboard for his computer! Of course I
thought that my chances of actually getting one were
slim to none, being that my wife hates the stupid
thing that sits on the desk in the bedroom and
occupies most of my waking hours. (When 1 am not
playing with my IBM 3081 at work, that is). Well,
Christmas morning I woke up to find shirts, ties, and
last but not least, a B. KEY 400 keyboard for my
ATARI 400. (Yes Virginia, there really is a Santa
Claus).
I did my best to hold miyself back from doing any
more than just looking at it (or should I say drooling
over it) until the kids had settled down after un-
wrapping their presents and totally destroying the
house. After what seemed like years (actually an
hour and a half), I grabbed my ATARI 400 and
settled down at the kitchen table with a cup of coffee
for what I expected would be at least an hour of
tearing my hair (what little there is left) out while
trying to install it. You see, I might be able to
program, but when it comes to anything mechanical,
forget it.
Inhome Software's advertisement read, "the B.
Key 400 can be installed in 2 minutes." Well, I said
to myself, here goes nothing. I opened up the
instruction manual and read the first sentence.
"TOOLS NEEDED: 1 PHILLIPS SCREW-
DRIVER." Hey, this isn't going to be as tough as I
thought! I removed the 4 screws on the bottom of my
computer, lifted off the top cover, and disconnected
the factory installed keyboard. There were no
additional screws to worry about and the ribbon
cable simply pulled out to disconnect it from the
computer. Next, I snapped in the B. KEY 400 and
proceeded to plug the new ribbon cable into the
computer. This was the only tricky part, as the new
ribbon cable had no plastic reinforcement on the end
to allow you to apply the even pressure needed to
make the correct contacts. Back went the four
screws and I was looking at my new keyboard after
only 5 minutes installation. (Well, so the ad
exaggerated slightly. Actually if it hadn't been for the
ribbon cable, I could have easily done it in 2
minutes.)
Next came the tough chore of putting the keys on.
I was actually going to have my 4 year old do it, but I
knew if I wanted to have the key that I pressed be
what it was supposed to be I had better do it myself.
Another 5 minutes and the installation was
complete. My coffee wasn't even cold yet.
For those of you who have done any serious
editing on the ATARI 400, you will be pleased to
know that I no longer had to wonder if I was actually
pressing the CTRL key when moving the cursor
around on the screen. The feel of the keyboard is
great, as good as the 800, in fact. The only problem
that I have found is that some of the special function
keys have been moved around a little. This is because
the size of the ATARI 400 keyboard is smaller than
the ATARI 800 keyboard and in order to
accomodate the larger size keys some adjustment had
to be made. But I am happy to say that it took only a
short time to make the adjustment and I find myself
using the computer more than ever.
In short the B. KEY 400 is the ATARI 400 owner's
dream come true. It is so good in fact that I just got a
48K memory board installed so that I could do
everything that a 800 can do.
Congratulations to Inhome Software on a quality
product with excellent installation instructions that
even an amateur like myself could understand.
Let's see, what should I ask for next
Christmas? . . . D
■ ffiffi'rirr
m ATARi
Q m wm^w.-rn'Mim/m m-'v»-'^^ -■
''•':'lli'l»'lijli«l!li|tl'il'Mt-iii
B
OUR GOAL: ^ ^ ^ J
To LIQUIDATE OVER
WBUCNOTICE
$1,000,000.00
Of SOFTWARE at SACRIFICE PRICES!
SAVE ON INSOFT • ON-LINE • DATAMOST
BRODERBUND • PENGUIN • AND MORE!
OFFER LIMITED TO STOCK ON HAND.
LOST COLONY D
HOME FILING MG
CENTIPEDE C
PAC MAN C
TEMPLE OF APSHAI
D/T
ATTACK at EP-CYG
D/T
GENETIC DRIFT D/T
DAVID'S MIDNIGHT
MAGIC
CHOPLIFTER D
RASTER BLASTER D
BUG AHACK D/T
POGOMAN D/T
TEXT WIZARD D
CANYON CLIMBER
D/T
PACIFIC COAST
HIGHWAY D/T
WORDRACE D
COMPU-READ D
MATCH RACERS D
PATHFINDER D
QUICKSOFT
LIQUIDATION
PRICE RETAIL
19.95
D 39.95
35.95
35.95
29.95
49.95
44.95
44.95
29.95 39.95
23.95
21.95
24.95
24.95
21.95
21.95
30.95
74.95
32.95
29.97
34.95
34.95
29.95
29.95
39.95
99.95
22.45 29.95
22.45
17.95
21.95
21.95
25.95
29.95
24.95
29.95
29.95
34.95
SALE RETAIL
CRYPTS of TERROR D 25.95 34.95
INTRUDER D 25.95 34.95
ALIEN NUMBERS D 24.95 34.95
POOL 400 C 31.95 39.95
SPEEDWAY BLAST 30.95 39.95
ACTION QUEST D/T 21.95 29.95
GHOST ENCOUNTERS _ _
D/T 21.95 29.95
K-DOS D 69.95 89.95
CROSSWORD MAGIC . _
D 35.95 49.95
MASTER TYPE D 31.95 39.95
LETTER PERFECT D 119.95 149.95
CROSSFIRE D/T 22.45 29.95
MOUSEATTACK D 22.45 34.95
FROGGER D/T 25.95 34.95
GALACTIC CHASE D 21.95 29.95
SALEretail I
ALI BABA D
23.95
32.95
GORFD
29.95
39.95
WIZARD of WOR D
29.95
39.95
SNEAKERS D
21.95
29.95
SNAKE BYTE D
19.95
29.95
BANDITS D
25.95
34.95
SNOOPER TROOPS
#1 D
34.95
44.95
SNOOPER TROOPS
#2 D
34.95
44.95
ADVENTURE on a
BOAT D
17.95
24.95
BLACK FOREST D
17.95
24.95
DISK lulANAGER D
21.95
29.95
PROTECTOR II D
24.95
34.95
SLIMED
25.95
34.95
SHAMUS D
25.95
34.95
WARLOCK'S
REVENGE D
24.95
34.95
PROBE 1 D
24.95
34.95
KID GRID D/T
22.45
29.95
FIREBIRD C
29.95
39.95
DEADLINE D
37.95
49.95
ZORK 1 D
28.95
39.95
CYPHER BOWL T
CRUSH. CRUMBLES,
CHOMP D
37.95
21.95
49.95
29.95
EMPIRE of the
OVERMIND D
24.95
35.00
fMy:
f'^'yw
MINER 2049er C
APPLE PANIC D
MICROPAINTER D
BASEBALL D
K-RAZY KRITTERS
SAMMY ttie SEA
SERPENT D
FACE MAKER D
THE SHATTERED
ALLIANCE
SALE
37.95
21.95
25.95
24.95
C37.95
18.95
25.95
RETAIL
49.95
29.95
34.95
34.95
49.95
23.95
34.95
31.95 39.95
D-DISK T-CASSETTE C-CART
JUST A SAMPLE OF THE SAVINGS YOU'LL FIND!
CALL IF YOUR PRODUCT IS NOT LISTEDl
FOR ORDERING ONLY CALL
vVV^
BUY NOW!-
this LO\N again and
quantities of itenns
' are limited! . -
'Tf^^'V
Terms of this sale:Add 4% for Visa and
Mastercard orders. All items subject to prior
sale. Prices subject to change without notice.
1-800-547-8009,
IJI%>v^Oriii
Department 97, P.O. Box 10854 Eugene, OR 97440
Copyright 1982 Microcomputer Support Group, INC.
R INFORMATION
OR ORDERING
IN OREGON CALL
1-503-342-1298
No C.O.D. orders
at sale prices.
FREE SHIPPING
on orders of $100.00 or more,
THE
AUSTIN EQUATION
400 + ^50
m
MEMORY POWER FOR YOUR ATARI 400* COMPUTER
$^4995
Sugg. list.
48 K AUSTIN BOARD
TM
AUSTIN BOARD™ FEATURES
64K RAM Technology for improved reliability & lowest power
consumption.
Superior CAD/CAM generated P.C. design.
Complete banic and board de-coupling for cleanest signal
possible.
Gold edge connectors.
Lifetime warranty.
P.C. template provided for easy ATARI 400* installation.
Full testing.
ATARI 800* compatabiiity with optional loop-back card
(available for $5.00 additional).
32K AUSTIN BOARD $94«5
SU6G. LIST
AUSTIN FRANKLIN ASSOCIATES
617-772-0352
43 GROVE STREET, AVER. MA 01432
M/C VISA & COD ACCEPTED DEALER INQUIRIES INVITED
'ATARI IS A REGISTERED TRADEMARK OF ATARI, INC.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 23
UTILITY^ ^l DISK DIRECTORY DUMP
16K disk
by Tony Messina
This issue's utility is rather simple in nature but
can prove quite helpful when trying to remember
what program is on which diskette. In order for this
utility to work you need the following items. 1) A
disk drive 2) a printer (40 or 80 column) 3) an
ATARI computer with a least 16k of memory. The
utility itself will give you a neat, formatted hardcopy
of your disk directory (1 told you it was simple! ). The
following article should also give you a general idea
about lOCB's and the OPEN/CLOSE statements
which are part of the BASIC repertoire.
lOCB's
Many programs appearing in A.N.A.L.O.G. use
OPEN and CLOSE statements to perform a
particular function. I'm sure such questions as
(What is being opened/closed, How/Why is it
being opened/closed and How can I open/close my
own things?) has crossed your mind, so now would
be a good time to find out what it's all about!!
One of the most difficult things to do on any
computer is INPUT/OUTPUT or I/O for short.
Would you like to write the program (commonly
called a driver) to print to the printer or list to the
disk or input a character from the keyboard?? It
really isn't all that fun. Thanks to those great ATARI
folks who designed our systems, (the operating
system in particular), we don't have to worry too
much about the above-mentioned items. We can
control our I/O through an lOCB or Input Output
Control Block. The operating system has eight
lOCBs. Each lOCB contains information as to the
nature of the device we want to communicate with,
where the driver for the device is located, where the
buffer for the device is located, length of the buffer,
the command we are trying to execute on the device
(OPEN, CLOSE, PUT CHARACTER, GET
CHARACTER etc). Timeout values (i.e. how long
do we try to execute a command before we decide to
give up) etc. This information is used by the Central
Input/Output (CIO) portion of the operating
system when communicating with the device on the
lOCB specified. Now that we know about lOCBs,
lets look at how we set them up.
OPEN/ CLOSE
The OPEN command allows us to communicate
with a device using the CIO facility. We don't have to
know maching language to access a device. . . we can
use BASIC instead! OPEN just dedicates an lOCB to
perform our command. We can think of it as
opening a hotline to our device. The line will stay
open until we hang up or CLOSE it. The form of the
OPEN command is as follows:
OPEN #IOCB,I/0 CODE, SPECIAL, DEVICE
Parameters can take on the following values:
lOCB - Any number from 0-7, Usually only 1 -5 is
best since the operating system uses lOCB for the
screen/editor, 6 for any graphics window (I'm sure
you all have used a PRINT #6 statement), and 7 for
LPRINT and Cassette I/O.
I/O CODE - 4=INPUT, 8=OUTPUT,
12=INPUT and OUTPUT, 6=DISK DIRECTORY
INPUT, and 9=OUTPUT (APPEND TO END OF
FILE)
SPECIAL - Is usually but can be filled in based
on the device you are using. If you are opening a
screen mode other then GR.O, you would need to
put the OR. mode number in the SPECIAL
parameter. If you have a sideways printing printer
(say that 10 times quickly), you could get it to print
sideways by putting 83 as the SPECIAL parameter.
When in doubt, use 0.
DEVICE - Devices which we can control and
which BASIC knows about are the KEYBOARD
"K:", GRAPHICS WINDOW "S:", PRINTER
';P:", CASSETTE "C:", DISK FILE
"D:filename.ext", SCREEN EDITOR "E:", and
RS232 PORTS "R:"
When opening a device we must make sure that
the parameters make sense. We wouldn't want to
open a printer for INPUT and OUTPUT since most
printers only allow OUTPUT. It also wouldn't make
sense to open the graphics window for DISK
DIRECTORY INPUT. See... it's not all that
complicated now is it??
NOW WHAT HAPPENS?
Once we have opened a device there are many
things which can be done. Commands such as PUT
#, GET #, PRINT #, etc can be executed by BASIC
directly to the device we have opened. The only thing
we have to remember is not to use an invalid
command for the I/O CODE selected. If we opened
the GRAPHICS WINDOW for OUTPUT for
example, then we could not use the GET command.
Experiment using OPEN with its associated
commands and you'll soon become proficient in the
mysterious world of ATARI I/O.
PAGE 24
A.N.A.L.O.G. COMPUTING
ISSUE 10
WE NOW RETURN TO EARTH OR
HOW UTILITY #4 USES THIS STUFF
This issue's utility opens 2 lOCBs. lOCB 1 is
opened for output to the printer LINE 220 and
lOCB 2 is opened for disk directory input LINE 230.
The filename to get has been set to "D:* ,*" since we
want them all. DEV$ is simply set to "P:" for the
printer, I set all my codes to constants for easier
reading. The values can be found in LINES 115-125.
With these two lOCBs open the rest of the utility is a
snap. We input a file name in LINE 380 and output it
to the printer. A nice thing about the directory input
command is that it also returns the number of FREE
SECTORS after the last filename has been input.
Line 385 checks for this and routes us to LINE 420
when we are done. Another item to note is that the
printer now recognizes ; and , so that we can format
our output. LPRINT under certain circumstances
will recognize these two characters but it's best to
open a channel to the printer and do a PRINT #
instead. This way we can be sure of obtaining the
desired results. The remainder of the utility
performs error checks and issues prompts for the
user. All of the major sections have been block
commented and should present no major problems
when you try and figure out what is being done.
HOW TO USE UTILITY #4
Type in the listing and save it to your disk. You can
now run the program. If you forget to turn on your
printer or disk you will be razzed until you do. Just
follow the prompts and you'll soon have a listing of
all your directories. You can even print a title ( 18
characters max) for each of your directories to help
jog your memory. One last note. If your printer
doesn't support the expanded print mode then you
must change LINE 305 by deleting the ESC ESC
CNTL N sequence and also deleting the *2 ) from the
centering calculation. If you have an EPSON printer
just change the code for expanded print to your
appropriate code.
That wraps it up for this issue. Have fun and I hope
I have provided you with another useful aid. Keep
those ideas, questions, and comments rolling in. Till
next issue HAPPY COMPUTING!! D
10 REN KMKKMKMKMKICmCKlCmCllMICimKKmCMKIIIC
15 REM » UTILITY tt4 »
28 REM * DISKCftT UER.l *
25 REM * BY TOHY MESSINA *
36 REN * FOR A.N.A.L.O.G. COMPUTING *
35 REM KMMKKKKKKKKMMKXlCKMKlCKKltKMICKMlClC
48 REN *
45 REM KKKKKICMKMMKKKICMICKKICMK
58 HEN » NAKE SCREEN TITLE »
55 REM KKMMKMlCKKICMMKKMmClClCltK
60 REN *
65 GRAPHICS 2 : 5TART=PEEK<56eJ +PEEK (561
)«256:P0KE STAHT+9, 6 : POKE START+10^6:P
OKE START + H,5:P0KE START+13,5
70 POKE 712,32:P0KE 711^10
75 ?^6j" UQiDiQy iS □":? tt6:? It6;"
88 ? 1*6 J"
;? tt6 ;"
33
tt6;
fci.-MHJ,»l»]'
? »6;" uQiDiQy -J- Q"
GHslS HiH HuCP":? »6;"
:■':? tl6;" BY'
85 ? tie;"
tt6j" r=z=====:
96 REM «
35 REN KMKKKICKmCMKlCKlCmtK
168 REM * VARIABLE INIT *
185 REM KMKieKKltMKXItKICMKMK
lie REM *
115 DIM DEyS(2J:DIM TABS (46): DIM DJREC
T0RVS(5J :I>IN FILENAMES (191 :DIM ANSSdJ
128 DIRECTORVS="D:*.«":TABS="
125 DISK=2 : PRNTER=1 : DIRTAB=18 : C0LNID=4
e:OUTPUT=8:NULL=0:DIRIN=6:COUNT=3:SPAC
E=3
130 REM *
135 REM MKKMKKKKMKKMKKMKMX
140 REN « GET USER INPUT «
145 REM KKMKKKKKKICMMKKMKICK
150 REM *
I cc ■» "K"
168 &EgS-"P ;";TRAP 565:? ■■ MiHII!IM!»>lin
■^tiMihgasH ■■:: INPUT WIDTH
165 IF WIDTH<>4e AND WIDTH088 THEN GO
TO 160
178 IF WIDTH=86 THEN COLMID=HIDTH : GOTO
215
175 DIRTAB=l:C0UNT=2:SPACE=2
188 ?
185 HEM «
198 REM mCKKKMMKICKKIClCMKKlOtmC
195 REM » OPEN DEVICES FOR «
200 REM » INPUT/OUTPUT »
205 REM KMMKMMKKKMMKKXICICMKICK
210 REM »
215 TRAP 495:LPRINT
220 OPEN ttPRNTER, OUTPUT, NULL, DEVS
225 TRAP 566
238 OPEN ttDI5K,DIRIM,NULL,DIRECT0RYS
235 REM *
240 HEM MKKMMUmtKMKmCMKMKmtKKItlC
245 REM * ASK FOR HEADER NAME «
250 REM KKKMMMKMKKKKKMKMmCKKICKK
255 REM *
268 ? " IJ!HJ;»>>M:»i*iHi " ; ; INPUT FILEN
AMES
265 IF FILENAMES="" THEN FILEHAMES="'-D
EFAULT NAME-"
278 REM «
275 REM MKKmCMlCMKmtKMmCICICICK
288 REM » PRINT TITLE OUT «
285 REM MMMMKmCMKMMlCKKKMKKlC
298 REM *
295 IF LEH (FILENAMES) >18 THEN GOTO 518
380 TRAP 518
385 PRINT «PRNTER;TABS(1,IMT((C0LWID-(
LEN (FILENAMES)»2) ) /2) ) ; "t_" J FILENAMES
318 ? ttPRNTER:? ttPRNTER;TABS(l,DIRTAB)
315 REM *
320 REM KKKKKKKmCKICmcmClCKKK
325 REM * PRINT COLUIW ID *
330 REM MMKMKKKKKIOCKKICMKKKK
335 REM *
348 FOR HEADCHT=1 TO COUNT:? tIPRNTER:"
FILNAME/EKT LEN"; TABS (1, SPACE) ; :NEXT
HEADCNT:? ttPRNTER
345 ? ttPRNTER:? ttPRNTER; TABS (1, DIRTAB)
350 HEM *
355 REM MlCKKmCKKMKMlClCKMKMKKKKMKKlCKM
360 REM * GET FILENAMES AND PRINT *
365 HEM KWKXKKMKlCKMMKKWKMKKKKMlCMMKlt
370 HEM »
375 FOR X=l TO COUNT
380 INPUT ttDISK, FILENAMES
385 IF LEN(FILENAMES)<17 THEN ? ttPHNTE
R:? ttPHNTEH;TABS(l, ( (COLIIID-16) /2) -1) ;
FILENAMES: GOTO 426
396 ? ttPRNTER;FILENAMES;TABS(l, SPACE);
:NEKT H:GOTO 345
395 HEM »
468 REM KMMMlCKKMMKKIClCKKKMMKXMKMKlt
485 HEM * CK IF USER WANTS NeRE «
416 REM KKMMMltlCKKlClCKMKMKKICMKMICMKM
ISSUE 10
A.N.A.L.O.G, COMPUTING
PAGE 25
THEM ? " l>H;M!M>lii:rai '
USE SAME PARAMETERS (V/NJ
:ZN
■ AMD AMS50-M" THEM GO
THEM GOSUB 49e:60T0 22
415 REM #
428 CLO SE ttPISK; CLOSE t tPBMTFR
425 ? ■ 1 iitm - t -III til a :m'a : ■ " : : t m p ii t ans$
438 IF ftMSS<>"V" AND AM5S<>"H" THEN GO
TO 428
435 IF AM5S="M"
GOTO 468
448 ?
PUT AMS^
445 IF ANSSO-V
TO 448
458 IF AMSS="V"
455 GOSUB 490: RUN
468 END
465 REM *
478 REM MMMKMKKKICKKMMMWKMKKMMKKK
475 REM » ERROR TRAPS FOLLOW »
488 REM MMMMKKKKMKKMKXMKXMMKKKKK
485 REM »
490 ? ••nl
CHH3"J ■' INPUT ANSS : RETURN
495 ?
OTO 168
580 ? "h ihi.-i:«hii*m:[iim;i*i jii:i>UJLi " : clos
E ttPRNTE R;G0T0 168
505_? " m ~
HUE" : G OTO 168
518? ■■udEEHOila
IIMSil8":G0T0 268
INSERT NEH DISK AND HIT <RETUR
PRINTER DOES NOT RESPOND!! If
INPUT ERROR CONLV NUMBERS PLEA
3":? "[laaaDiHi
(see D:CHECK 2, p. 26)
18 DATA 771,6,123,386,973,790,73,36,95
7,38,77,893,96,789,414,6422
85 DATA 138,83,555,565,775,274,628,478
,181,288,688,328,603,286,382,6148
168 DATA 891,741,931,154,989,300,49,94
8,821,29,276,732,876,711,271,8631
if ^„??^?=?^^' 2^®' 220, 291, 293, 179, 615, 2
94,811,693,814,388,828,705,378,6988
318 DATA 166,283,793,563,796,289,683,1
88,290,366,588,369,296,778,660,7812
P^.S^'Ifi 23,135,307,293,438,296,285,96
5,318,322,55,17,334,135,534,4457
468 DATA 50,308,117,84,128,386,488,484
,898,979,588,4326
ATARI
GRAPHICS HARDCOPY
Dumps anything on scieen of ATARI
400/800 to printer. All graphics and text
modes. Players/ Missiles/ sea ling /grey
scale/GTlA/more! Works with EPSON,
Centronics 739, IDS and Trendcom.
"ATARI is a registered trademark of
ATARI Computer Inc.
Specify 400 or BOO and .^_ ,
^^^^^^ Printer when ordering ™"
f ^^^^ (209) 634-8888/667-2888 '^SM
T Vi C.O.D.
i A^A14CR0TPONICS,inc..
125 N. Golden Stale Blvd.
Turlock. California 95380 vm
NEW LOW PRICE
$79.95
(Includes Cable & Software)
/I
^^^^ 1125
^^^^^ Turin,
jl
"M
■ liiUWli IIJ l-HIHI '.1:1:1 I H Ul'.l
ATARI®
LIST
OUR
PRICE
PRICE
ON-LINE
Frogger (D) (C)
...34.95
23.00
Crossfire (D) (C)
...29.95
19.75
Crossfire (R)
...44.95
27.25
Wizard & the Princess
(D)
...32.95
22.00
BRODERBUND
Choplifter (D)
...34.95
23.00
David's Midnight
IVlagic(D)
...34.95
23.00
Apple Panic (D) (C)
...29.95
19.75
Labyrinth (D) (C)
...29.95
19.75
ROKLAN
Gorf(D)
...39.95
26.50
Gorf (R)
...44.95
29.75
Wizard of Wor (R)
...44.95
29.75
Ami Sub Patrol (C)
...19.95
13.25
THORN EMI
Submarine Commander
(R)
...49.95
35.75
Jumbo Jet Pilot (R)
...49.95
35.75
SYNAPSE
Chicken (D) (C)
. . . 34.95
23.00
Nautilus (D)(C)
...34.95
23.00
Claim Jumper (R)
...44.95
29.75
Picknick Paranoia (R)
...44.95
29.75
INFOCOM
Zorklll(D)
...39.95
26.50
Deadline (D)
...49.95
33.00
Starcross (D)
...39.95
26.50
KBYTE
K-Razy Shootout (R)
...49.95
33.00
COMPUTER SOFTWARE
SPECIALS?
NO, THESE ARE OUR
EVERYDAY LOW PRICES
(D) = Disk (CI = Cass. |R| = Cart,
Prices Subject to Change
Send for Free Catalog
PHONE ORDERS:
1-800-637-3095
IL, AK, & HI Call:
1-217-367-5774
HRS.: 9-6 MON.-SAT.
MAIL ORDERS TO:
SECTOR ONE
1001 BRIGHTON
URBANA. IL 61801
Add $2.00 for postage and handling • Mastercard
and Visa orders add 4% service charge (include card ti
and exp. date) • Personal checks and M.O. also
accepted • Illinois residents add 5% sales tax •
Please specify computer type • MOST ORDERS
SHIPPED WITHIN 24 HRS
Atari is a registered trademark of Atari. Inc.
ATARI®
PRICE
PRICE
DATASOFT
Text Wizard (D)
..99.95
66.00
Spell Wizard (D)
..79.95
52.75
Graphic Master (D)
..39.95
26.50
The Basic Compiler (D|
..99.95
66.00
DON'T ASK SOFTWARE
S.A.M. (D)
..59,95
39.50
LJK
Letter Perfect (D)
149.95
107.25
Letter Perfect (R)
199.95
143.00
Data Perfect (D)
..99.95
71.50
Edit 6502 (R)
199.95
143.00
VISICORP
Visicalc(D)
250.00
175.00
ANCHOR AUTOMATION
Signalman Atari Modem
MKII
..99 00
7600
HAYES MICROCOMPUTER PRODUCTS
Hayes Stack
Smartmodem 289.00 219.00
MAXELL
MD1 5.25"boxof 10 51.90 27.50
WICO
Joystick
Joystick Deluxe
Trackball
TG PRODUCTS
TrakBall
IN-HOME SOFTWARE
Atari Keyboard
..51.90 27.50
..29.95 19.75
..39.95 24.25
..69.95 46.25
..64.95 43.00
119.95 92.50
AND MUCH MORE
AND MUCH MORE
PAGE 26
A.N.A.L.O.G. COMPUTING
ISSUE 10
D:CHECKII
16K disk
D:CHECK by Istvan Mohos
Revision 2 changes by Tom Hudson
In issue #8 of A.N.A.L.O.G. we introduced a
program called D:CHECK, written by Istvan Mohos.
D:CHECK's purpose was noble enough: help disk
users to find typographical errors in the programs
they typed in from the magazine. Unfortunately,
D:CHECK has a minor flaw that can cause some con-
fusion. This article will present a set of modifications
to D:CHECK that will correct the problems.
The Changes
For those who already use D:CHECK, there are
only a few changes. The lines affected are 105, 125,
130, 140, 150, 360 and 365. For those who do not
use DrCHECK yet, the entire program with changes
is listed at the end of this article.
The main problem with D:CHECK shows up if
(1) an entire line is missing or (2) a line is mistyped
with a different number of characters than the ori-
ginal. Either of these problems may confuse the
checksum routine in D:CHECK, giving incorrect
checksum values for the rest of the program.
Since the new checksum routine will only work
with programs starting with issue #10, D:CHECK2
will ask for the issue number. If the program being
checked is from an earlier issue, D:CHECK2 will
use the old checksum routine, and so will match
the D:CHECK DATA from that issue. This was done
so that readers who order back issues will be able to
check those programs with the new CHECK pro-
gram.
The last modification allows the user to simply
enter the filename (D:filename) to be CHECKed. D
Description of Changes
LINE DESCRIPTION
105 Revision 2 credit.
125 Set up a string for the filename.
130 Accept the filename via INPUT statement.
(Remember to use the "D:" prefix!)
140 Find out what issue the program is from.
150 OPEN the requested file (LIST format).
360- Adjust checksum routine if program is from
365 issue #10 or later.
Abbreviated Instructions
For those who have not used D:CHECK, here is a
step-by-step explanation of how to use D:CHECK2:
1. Type in the program listing from the magazine.
(DO NOT type in the "D:CHECK2 DATA"!)
2. LIST your program out to the disk (i.e. LIST
"D:yourprog").
3. RUN D:CHECK2.
4. D:CHECK2 will ask for filename. Respond "D:
yourprog".
5. D:CHECK2 will ask for the issue number. If the
program you are checking is from issue 10, type
"10".
6. D:CHECK2 will execute and display final in-
structions. At this time you can check the D:
CHECK2 DATA from the magazine against the
results D:CHECK2 put out to the file called
"BUG".
7. If your BUG data does not match the D:CHECK2
DATA, check the line that corresponds to the
DATA value that is incorrect. For example:
100 DATA 234, 34, 120, 254, 23, 78, 34,
198, 202, 134, 233, 102, 97, 134, 33, 1910
In the above line of BUG, if the value 254 is in-
correct, then the third line after line 100 in your
program is incorrect. Note all errors and then EN-
TER your program in order to correct it. D
ine REH [liiiJiia debugging aid
BV ISTUftN MOHOS
185 REM VERSION 2 MODS BY TOM HUDSON
110 GRAPHICS 0;? ;? "This run will LIS
T data stateMents with the naHe: m
B, to the disk,"
120 ? ;? "The [ilffpl DATA is created by e
ualuating each character of a user pro
graH, LISTed to disk.":?
125 DIM FiStlSJ
130 ? "ENTER FILENAME"; ; IN PUT FIS
135 PIK=PEEKC559J :Z=e:REM aEDMElffi
140 ? -.7 "ENTER ISSUE NUMBER" ;: TRAP 14
8: INPUT ISSUE
150 TRAP 130:OPEN »1,4,0,FIS
160 ON K GOTO 238,338
170 ? "1^":' "DISABLING SCREEN ... STAND
BY.,.":FOR 1=1 TO 808:NEKT IlPOKE 559,
Z:REM debug before poking
180 LINECOUNT=Z:DIM I5 tl26J
190 TRAP 210:INPUT ttl; IS : LINECOUNTrLIH
ECOUNT+1
208 GOTO 198
218 CLOSE «l:Q=INT(LINEC0UNT/15J :DIM C
tLINEC0UNTJ,RC0J,5Sf53 : IF tLINECOUNT^Z
OR I$=""> THEN 568
215 IF A5CtlSCljlJ5<48 OR ASCClStl^lJ)
>57 THEN 568
220 X=1:G0T0 150
230 RANGE=Z:LINE=Z:FOR 1=1 TO 5:SSCI,I
}= NEHT I
248 COUNT=Z
250 INPUT «1;IS:T=1:C0UNT=C0UHT+1
268 IF ISIT,T><>" " THEN SS CT, T)=l5 CT,
T3 :T=T+l:G0T0 268
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 27
278 LINE=UflL(S$5
28B RCRANGE3=LXNE:R0NGE=RANGE+1
Z9e TRAP 320: INPUT ttl;lS
396 COUHT=:COUMT + l:IF C0UMT=15 THEN 248
3ie GOTO 296
320 CLOSE ttl:K=2:G0T0 150
330 FOR 1=1 TO LINEC0UNT:CHECK5UM=Z
340 GET ttl^ NUMBER :PRODUCT=X*NUMBER: CHE
CK5UM=CHECK5UM+PR0DUCT:K=K+1:IF K=4 TH
EN K=l
345 IF NUMBER=155 THEN 360
350 GOTO 340
360 CHECKSUH=CHECK5UM-1000«IHT CCHECK5U
M/1O80J :CCI>=CHECK5UM:IF I55UE>9 THEN
X=2
365 NEXT I
370 CLOSE »l:OPEN ttl , 8, 0, "D : BUG" : LINE=
RtZ) :ITEM=Z
380 C0UNT=15:T0TfiL=Z:IF LINEC0UNT<15 T
HEN COUNT=LINECQUNT
398 PRINT ttljLINE;" DflTfl ";
400 FOR 1=1 TO COUNT :DflTUM=CC15«ITEM+I
} :PRINT ttljDftTUM;","; :TOTflL=TOTftL + DftTU
M.'NEXT I
418 PRINT Hi; TOTAL
420 ITEMzITEM+1 : LINEC0UNT=LINEC0UNT-15
:IF LIHECOUHKl THEN 450
430 LINE=RIITEM3
448 GOTO 388
450 CLOSE ttl:POKE 559, PIK
468 ? "HiQTo Check F^nB data against pri
nted data statewents, type NEM. Th
en type:"
478 ? "ENTER "; CHRS <34J ; "D : BUGgHIIECl
Type LIST after the
READY proMpt."
480 ? :? "The line nuHber of each data
stateHentcoincides with the first lin
e of the"
498 ? "user prograM which the data sta
te»ent evaluates."
588 ? "NuHbers within each data staten
represent consecutive lines of
user prograH."
"The last numb er i s the total,"
:? "Check the lEBD number of eac
Mient against the printed wer
ent
the
510
528
h state-
sion;"
538 ?
heck
nt."
548 ?
only in case of a discrepancy c
each number in the data stateme
"Make note of the lines containi
"9 *he b ugs. T hen ENTER "JCHRS t34J J "D :
yourprogiaajiia:!"
550 ? "to make the corrections. ":END
568 POKE 559, PIK:? "rQ":? "Your typed-
in_ program was not properlyLISTed to d
iSk ."
578 ? :? "Please list your program to
disk, thenRUN "JCHR5C34) ;"D:CHECK"jCHR
SC34);" again. ":CLR :END
(see D:CHECK 2, p. 26)
188 DAT* 198,8,224,968,864,530,628,951
,694,717,939,611,599,712,970,9605
215 DftTft 480,344,376,683,582,817,457,5
76,232,67,719,435,930,528,324,7558
350 DATA 718,723,755,436,253,444,269,5
65,540,450,729,508,812,331,524,8057
490 DATA 255,665,387,213,132,789,489,7
83,509,4142
CONTROL CHARACTERS
Som
e program listings
reproduced in A.N.A.L.O.G. may contain "strange" characters not shown on |
the ATARI keyh
oard.
These are special characters
which use
the CTRL, ESC
and "ATARI LOGO" 1
(INVERSE) key
s. Shown below is a list of these (
iharacters
and the keystrokes used to get them. D 1
«
CTRL
t
■
INVERSE CTRL
M
CTRL
A
•■ CTRL Z
■
INVERSE CTRL
N
CTRL
B
t ESC ESC
n —
INVERSE CTRL
CTRL
C
t ESC CTRL UP-ARROH
E —
INVERSE CTRL
P
CTRL
D
« ESC CTRL DOHN
-ARROH
r ---
INVERSE CTRL
a
CTRL
E
♦ ESC CTRL LEFT
-ARROH
s —
INVERSE CTRL
R
CTRL
F
* ESC CTRL RI6HT-ARR0M
■•
INVERSE CTRL
S
CTRL
G
« CTRL ,
n —
INVERSE CTRL
T
CTRL
H
* CTRL ;
■
INVERSE CTRL
U
CTRL
T
H ESC SHIFT CLEAR
1 —
INVERSE CTRL
V
CTRL
J
i ESC BACK S
II
INVERSE CTRL
H
CTRL
K
\ ESC TAB
■■
INVERSE CTRL
X
■
CTRL
L
C INUEH5E CTRL
§
T —
INVERSE CTRL
V
^
CTRL
N
i: INVERSE CTRL
A
i: —
INVERSE CTRL
z
^
CTRL
N
1 INUER5E CTRL
B
D
ESC DELETE
■
CTRL
a INVERSE CTRL
C
D —
ESC INSERT
«
CTRL
P
:i INVERSE CTRL
D
Q —
ESC CTRL TAB
(CLR)
r
CTRL
n INVERSE CTRL
E
Q
ESC SHIFT TAB CSETJ 1
—
CTRL
R
fA INVERSE CTRL
F
■ —
INVERSE SPACE |
+
CTRL
5
^ INVERSE CTRL
G
■ —
INVERSE _
•
CTRL
T
f INVERSE CTRL
H
D —
INVERSE CTRL
,
■
CTRL
U
f INVERSE CTRL
I
D —
INVERSE CTRL
/
J
CTRL
W
^ INVERSE CTRL
J
II —
INVERSE 1
T
CTRL
H
L INVERSE CTRL
K
Q
ESC CTRL 2
X
CTRL
X
J INVERSE CTRL
L
[|
ESC CTRL BACK
' S
1
"~^^
CTRL
V
u —
ESC CTRL INSERT J
PAGE 28
A.N.A.L.O.G. COMPUTING
ISSUE 10
MAGIC KEYPAD
A Program that writes Data Statements
for your ATARI
16K disk
by Greg Peck
•A- .
I'm sure that you will agree that one of the most
tedious activities on your computer is typing in
DATA statements. Whether it's from a listing in
your favorite magazine or a piece of music to dress up
your program, it tends to be more work than it's
worth.
Well, your worries are over. MAGIC KEYPAD
will take care of the work for you. All you do is type
in the data and MAGIC KEYPAD will take care of
line numbers, the command, commas, how much
will fit on each logical line and LIST the file to your
disk. And that's not all! You also have the option of a
numeric keypad.
The program checks keyboard input and changes
U,I,0 into 4,5,6; J,K,L into 1,2,3 and M into 0.
Presto! You've got a numeric keypad. Granted, it's
not perfect, but for the price it will do quite well. I
got the idea from an ad for that little Epson
computer.
To use the program, begin by answering the
prompts. First, you select to either pack (fill to
capacity) the DATA statements or have from 1 to 9
separate elements in each DATA statement. Then
choose whether you want the keypad or not. After
that, type in the first line number to be used in the
DATA statements. The lowest line number available
is 500 to prevent the DATA statements from writing
over part of the program. The last prompt to answer
is the file name. Your DATA statements will be
LISTed under this name, so be sure it hasn't been
used before. Later, you can ENTER the DATA
statements into your program.
You will then be told the line number and the
current number of the "data element" you are
working on. Just type in whatever you want in the
DATA statement and press RETURN. Everything
will be taken care of. Type "1E9" if you want to
move to the next line number. When you're done
just type "END" as your response to the prompt.
The screen will go blank while the program is erased
and the data statements are LISTed to the disk drive.
The READY prompt will then appear on the screen.
If you type LIST you will see the DATA statements
that the program wrote. D
Lines 10 - 100 set up the strings and prompts the user.
Each input is trapped so that an error will
not stop the program.
Lines 110-120 establishes the file name to be listed
later and sets LL (Line Length) to 10 to
cover the line number and command.
Lines 130-240 contains the loop that controls data
input. It loops once for each element in the
DATA statement. NOE is the variable for
the Number Of Elements. Then, it checks
FLAG to see if the user wants to use the
keypad. Lines 170 & 180 check for flags
to jump out of the loop. Lines 190 & 200
check the line length. Line 210 adds a
comma if needed. Line 220 takes care of
the first element in the DATA statement.
Line 230 adds the most recent input to
LINE$.
Lines 250-290 clear the screen, print the DATA
statement, turns on the FORCED READ,
stops the program, turns off the FORCED
READ and returns to the main program
loop.
Lines 300-390 create the numeric keypad. If the
RETURN key is pressed, K will equal 155
and the program will return to the main
loop.
Lines 400-470 deletes the program and LIST the
DATA statements to the disk drive under
the name input at the beginning of the
program. Line 470 ends the program and
returns the computer to the normal
operating mode.
Variable Table for MAGIC KEYPAD.
E$ - holds user input
LINE$ - the content of the DATA statement
C$ - a comma ","
CO$ - the command "DATA"
NAME$ - name of file
NM$ - "D: (added to NAME$ for disk operation)
K - number of character from Keyboard
NOE - Number Of Elements
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 29
FLAG - l=keypad input l=normaI input
LN - current Line Number
I - counter in main program loop
LL - Line Length
X - first line number and counter in keypad
for - next loop
le DIM E$C2e0).LINE$(20e),C$C5),C0$C18
J , NHS C18) , NAMES 1193 : CS=", " : C05=" DrtTO
" ENTER NUMBER
OR PRESS 'P* T
2e GRAPHICS e:? :? :?
F ELEMENTS CLIHIT 91
PACK DATA"
30 OPEN tt3,4,8,"K:":eET tt3,K:CL0SE »3:
IF CHR$CK)="P" THEN NOErSBsGOTO 60
48 TRAP 48888: TRAP 48: IF UAL CCHRS (K)) >
8 AND UALrCHR$CK)]<18 THEN NQE^UAL tCHR
$CK)) :GOTO 68
58 GOTO 28
68 ? :? " PRESS -K- TO USE KEYPAD": OPE
N »3,4.8,"K:":GET tt3,K:CL0SE tt3:P0KE 7
64,255:IF CNRSCK)="K" THEN FLA6=1
78 TRAP 48800: TRAP 78:? :? :? " INPUT
FIRST LINE NUMBER ": INPUT K:LH=K-18:IF
K<588 THEN 78
88 TRAP 48888: TRAP 88:? :? :? " INPUT
NAME OF FILE C8 LETTERS MAX.) ": INPUT N
AMES
98 IF LENCNAMESXl OR LENCNAME$)>8 THE
N 88
188 IF HAMESC1,1J-" " THEN 88
118 READ NM$:NMS(LENCNM$3+13=:NAME$:LL=
18
128 DATA "D:
138 FOR 1=1 TO NOE:? "H":? :? "IE? MR!
TES DATA 'END* ENDS PROGRAM" : ES=" "
148 ? "144INPUT ELEMENT NO. ";lj" LINE
NO. "'LN+IS
158'if'fLAG<>1 then INPUT ES
168 IF FLAG=1 THEN GOSUB 388
178 IF ES="1E9" THEN GOTO 258
188 IF ES="END" THEN 488
198 LL=LL+CLEHCES))*l:IF LL>114 AND NO
E<18 THEN GOTO 28
208 IF LL>114 THEN 258
218 IF I>1 THEN LINES fLEN CLINESS +13=C$
228 IF 1=1 THEN LINEi=ES
238 IF I>1 THEN LINES CLEN CLIHES3+13 =ES
248 NEXT I
258 POKE 789.4:? "H":LN=LN+10 : POSITION
2,5:? LN;COS;LINES:? " COHT "
268 POSITION 0,0:POKE 842,13:ST0P
278 POKE 842,12:? "«
S="1E9" THEN I=e:GOT0 138
288 IF KNOE THEN 1=1 : LL=18 :G0T0 228
298 GOTO 138
lll:OPEN tt3,4,0,"K:":6E
K=155 THEN RETURN
THEN ?
;POKE 789,18:IF E
"4";
"5":
388 FOR X=l TO
T tt3,K: CLOSE tt3:IF
318 IF CHRSCK3="U"
="4": GOTO 398
328 IF CHRSfK3="I" THEN ?
="5": GOTO 390
338 IF CHRSCK>="0" THEN ?
="6":G0T0 398
348 IF CHRSCK3="J" THEN ?
="1":G0T0 398
358 IF CHRSCK}="K" THEN ?
="2": GOTO 398
368 IF CHRSCK3="L" THEN ?
="3": GOTO 398
378 IF CHRStKJ="M" THEN ?
="8": GOTO 398
388 ? CHRSCK); :EStX,X]=CHRSCK3
390 NEXT X: RETURN
488 POKE 789,4:? "H" : POSITION 2, 5: FOR
1=18 TO 188 STEP 18:? I:HEXT I:? "CONT
418 POSITION 0,0: POKE 842, 13: STOP
428 POKE 842,12:? "H":P0SIT10N 2,5:F0R
1=198 TO 380 STEP 18:? I: NEXT I:? "CO
NT"
438 P8SITI0N 8, 8: POKE 842, 13: STOP
ESCX,XJ
ESCX,X3
"6";:ESCX,XJ
"1"; :ESCX,X)
"2"; :eScx,X3
"3"; :ESCX,X3
"0"; :ESCX,X3
448
1=
NT
458
468
1=
ST
478
D":
POKE 842,12:? "R" : POSITION 2, 5: FOR
318 TO 488 STEP 18:? I: NEXT I:? "CO
POSITION 8,8:P0KE 842,13:ST0P
^fS'*f«®l?i** = ' "«":P0SITI0N 2,5:F0R
-Inhs?? T? ?I^^*?r ^'"^"^ ^=- ""
? "POKE '842, 12: POKE 7e9,18:GR.8:EN
POSITION 8,8:P8KE 842,13:ST8P
(see DiCHECK 2, p. 26)
18 DATA 134,191,649,889,818,952,247,99
8,298,357,291,664,528,121,843,7676
168 DATA 791,551,59,999,874,559,141,56
9,742,566,615,871,834,721,176,9868
318 DATA 144,116,142,185,116,127,118,7
15,795,588,684,205,618,199,616,5288
468 DATA 349,679,1828
Atari® Users ii
NOW AVAIL ABLE...
MIGHTY BYTETM Disk Copier. A
backup copier that allows you to
select sectors, identify and write bad
format. Copy almost any disk. Tlie
most powerful copy system available
today on Atari® 400/800 computers.
Only $29.95 + $1 shipping
VISA & MASTERCARD call now
(815) 968-2228 for fast delivery
or send payment to:
MIGHTY BYTE COMPUTER
828 Green Meadow Ave., Dept. AG
Rockford, Illinois 61107
The Light Pen
at^thc
Right Price:
Shown actual size.
S0095
^^^HH| ^^^ Each i
SPECIAL
INTRODUCTORY
OFFER!
Less is more. This
maxim has never been
more true than now with
the introduction of our new
Edumate Light Pen. This
affordable and reliable tool
was originally designed and
developed for use with our
Learning Center educational soft-
ware — however, it is the perfect
accessory for your Atari 400/800,
VIC-20 or Commodore 64, regardless
of application. Response has been so
overwhelming that we now announce a
new price schedule for quantity orders:
1-4— $29»^ each
5-24— '20°^ each 25-99— ^19^» each
100 and more— H7®^ each
Order now! See your local dealer or order direct.
New catalog $2.00. Visa and MasterCard accepted—
please add $2.00 for postage and handling.
Call toll free!
1-800-334-SOFT
DEALER INQUIRIES INVITED
•*• ^^ a division of FUTUIUS HOUSE — dept. al
P.O. "box 3470, chapel Mil, nortli Carolina 27514, 919-967-0861
1983 - Take Control
A FINANCIAL WT/ARn I.5
THE HIGHLY ACCLAIMED PERSONAL FINANCE SYSTEM FOR ATARI*
Budget Forecast- 26 expense categories
Check Entry -easy data entry -scan & modify
26 major & 36 sub-categories -information bioclc
Check Search -single or multiple parameters -
(up to seven) to search entries
Tabulations -detailed expense vs. budget
comparisons by month, year-to-date, category
Bar Graphs- screen displays in graph form
expenses vs. budget -by month or category -
printing with graphic capable printers
Check Reconciliation -fast clearing of resident
checks & deposits, complete summary report
Checkwriter- prints your custom checks
Printouts- most popular printers • Audit Report
Multi-Colored Graphics • Audio Enhancements
7 Utility Programs • User- Friendly Operation
Easy To Use Instruction Manual
Handsome Tinted Plastic Storage Case
The system is designed for Atari computers having a
minimum of 24K and operating from a disic drive. The
price is only $59.95 plus $3 for handling/postage.
If your dealer doss not have A Financial Wizard . . .
Telephone orders are accepted on
Mastercharge or Visa credit cards. Mail order must be
accompanied by check or money-order or credit card #.
Dealer Inquiries invited. (405)751-2783.
'trademark of Atari Inc.
OK residents ad 4% Tax.
A Financial Wizard ,
Exclusively thru
D CHECK ENCLOSED
NAME (Print)
Address
City
Card#
i:ii\i Lii\ii=
COMPUTER CENTERS of OKC '
D VISA
'10944 North May
Oklahoma City, OK 73120
(405)751-2781
D MASTERCHARGE
State.
.Exp..
-Zip-
-Sig..
A.N.A.L.O.G. COMPUTING
ISSUE 10
irSHERE!
^♦^'
KAN^^
,.^^
#v's
'£/^.
m
THE ATARI 1200XL HOME COMPUTER
by Lee Pappas
"We at ATARI believe that the model
1200XL is a new generation in home comput-
ing, a culmination of our experience in hard-
ware design." These words come from
Raymond Kassar, ATARI'S chairman and chief
executive.
ATARI has just pulled the post-Christmas wrap-
ping off of its latest personal computer — the
1200XL. New design. New features. New questions
as to ATARI'S place in the computing world. Last
issue's editorial covered many of the problems
ATARI has been experiencing of late, and although
hardware wasn't the main problem we were con-
cerned with, suddenly the 1200XL has been thrown
upon us. Just what is the 1200; and what does it do
that the 800 (and, for that matter, the 400) does
not?
The 1200XL Differences
The 1200XL comes with 64K of RAM. As with
the 800, once the BASIC cartridge is used, you are
down to 37902 bytes of free RAM. However, there
the similarities end. The 1200 has a 16K ROM pack
compared to the lOK unit of its predecessors. The
16K ROM can be completely bypassed, and — with
no ROM cartridge in the slot — it allows 64K.
However, the computer will now be incapable of
doing anything until the user puts in some sort of
operating system. The expanded ROM operating
system capabilities will be explained later on.
The most important feature of the 1200 however,
is that it is ALMOST fully software compatible with
the 400 and 800. Read ALMOST We didn't have
enough time to try all the software available, but we
do know that Letter Perfect and several other pro-
grams will not operate on the 1200. LJK, for in-
stance, has announced they will have a revised ver-
sion for the 1200. Cartridges now go in the left hand
side of the new computer. There is no door to open
and close, and the power is automatically triggered to
"reboot" any new cartridge inserted (no need to turn
power on and off by hand — the computer knows
how). Because of some physical differences, many
third party cartridges will NOT fit in the 1200XL.
On the left panel is the on/off switch, and near the
front, angled at about 30° are only two controller
ports, not four. There are no openings of any kind on
the front or right hand side; no cables dangling out all
over the place. The channel selector switch, monitor
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 33
jack, TV cable plug, and serial port are all on the rear
panel. The television cable has RCA type connec-
tors and is removable so that all cables can be dis-
cot\rvected from the computer. The serial port is
identical to that on the 400/800 and will take all the
peripherals of its predecessors, although a new ver-
sion of the 410 and 810 are on the way. The newer
disk drive is rumored to have 180K of disk storage.
t-flEt-IORV
The 1200XL cabinet is a cream and dark brown high
impact plastic, with a new brushed metal strip, where the
new keys lie. Just above that is a clear plastic strip
covering the 3 LEDs and key labels.
Special Features
The most radical difference in the 1200XL is the
strip of metal keys residing just above the slightly re-
arranged keyboard. The 11 metal pushbuttons
consist of the System Reset key, remotely located to
the left of the 1200XL logo. This key is more diffi-
cult to press, making programming "accidents" less
likely. To the right of the logo are the newly-
positioned START, SELECT, and OPTION keys,
followed by 4 new function keys, the HELP button,
inverse video key (no more ATARI logo key on the
keyboard), and the BREAK key.
The HELP key will work with selected new pro-
grams, to aid the user in the use of that piece of soft-
ware. When pressed with no cartridge in place, for
instance, the computer displays the self-diagnostic
mode. From here you can check for ROM errors,
bad memory locations, the sound channels, and all
the keys on the keyboard. All this is a little gim-
micky, but it does work. The new function keys
allow the user to move the cursor up, down, left, or
right (these replicate those also found on the key-
board, but are one touch and don't require the use of
the CONTROL key). If pressed with the SHIFT key,
Fl will bring the cursor to the top left (HOME)
position without clearing the screen. F2+SHIFT will
bring the cursor to the bottom left corner. Function
key F3+SHIFT will cause the cursor to move to the
far left of a logical line, and F4+SHIFT moves the
cursor to the far right of a line.
B^QD OR Cma TO EMIT
Selection r of the diagnostic HELP screen displays a
ROM and RAM memory test.
An audio-visual test in the diagnostic mode plays
musical notes to check the POKEY chip for operation of
all 4 voices.
t- C-: ^^■ e:; ci ri r r> t e s- t
«12345e789«<> .
as OMCHTVUIOI>-:_„
• F S H J K L : -r - "
Z K C V B M ft , .r
BSai Off CH13 TO EMIT
The keyboard test allows the user to check any of the
keys on the 1200'XL for proper operation and contact.
PAGE 34
A.N.A.L.O.G. COMPUTING
ISSUE 10
HYPERCARTRIDGE®
for ATARI® 400/800 *
16K $39
w/o EPROMs/ROMs
FOR SOFTWARE DEVELOPERS AND HOBBYISTS!
• extend memory of 16K RAM and 32K RAM computers
• create 16K cartridges easily with an EPROM programmer
• combine ATARI® BASIC ROMs with your own subroutines on
ROM/EPROM
• eliminate need for disk drive and extra RAM for lengthy programs
CONFIGURATIONS:
#1 Any combination of 4 2532
EPROMs/2332 ROMs
#2 Two ATARI ROMs and two
2532's (or 2332's)
SPECIFY WITH ORDER
2532 4K EPROMs
$7.50 each
with cartridge order only
CHAMELEON COMPUTING®
Dept. of Physics & Astronomy, Box 119-L
Dickinson College, Carlisle, PA 17013
(717) 245-1717
Please add: $1.50 shipping/handling
PA residents add 6% sales tax
Quantity discounts available CHECK, MC, VISA
• Trademark of ATARI. INC
32k RAM
FOR
ATARI 400/800
Only Tech'Data can offer such top quality at so
low a price. Our Ram board features:
• Lifetime Warranty
• Gold-plated edge
connectors
• Compatability
with Atari 400/800
Dealer Inquiries Invited
800-237-8931
In Fla.: 813-577-2794
V
Tech 'Data Corporation
3251 Tech Drive North, St. Petersburg, FL 33702
»^ THE
"^ ^BIG MATH
ATTACK™
Challenging new math program . . .
Sharpen your skills by entering the correct answer
before the equation lands' on your city! Provides
hours of educational entertainment ^^ ''OlV "
Features:
• Full color
• High resolution graphics
• Animation
• Sound
• Four math functions (+, ■, X, -^)
• Two levels for each function
Recommended for grades 1 -6. Available for the ATARI & APPLE 11.
ATARI 16K (cass.) 520.00
ATARI 24K (disk) S25.00
Requires ATARI BASIC cartridge
APPLE II (disk) DOS 3.2/3.3 525.00
Requires Applesoft Basic in ROM.
Ask for it at your local computer store.
or order direct
'^.H.E.S.I.S.
PO. Box 147
Garden City, Ml 48135
(313) 595-4722
Please add:
SI. 50 shipping/handling
51.50 CO,D.
WRITE FOR FREE CATALOG
DEALER IMQUIRIES WELCOME
MONARCH r\
MAKES ATARI
BASIC FLY.
With ABC™, Monarch's | new BASIC
compiler for ATARI 400" and 800, you
develop and debug pro-1 grams using
your ATARI BASIC car- #tridge, then
use ABC to transform ■ them into
compact code that runs%up to 12
times faster, without the ^cartridge
(and protects your source^code, too).
40K and disk required. ^ For your ABC
diskette and manual^send check or
money order for 4^ $69.95 (or $9.95 for
manual alone). ^^ Monarch Data Systems
^^^RO. Box 207, Cochituate
^^^^MA 01778, (617) 877-3457.
■■I Mas
III inqu
Mastercard/Visa by phone. Dealer
inquiries invited. Mass. residents add
5% sales tax. ATARI, ATARI 400, and
ATARI 800 are trademarks of ATARI, Inc.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 35
When used with the CONTROL key, Fl will now
disable the keyboard ("locking" it up so no one can
type), and when pressed again will free it up. F2+
CNTRL shuts off the screen DMA: when DMA
(Direct Memory Access) is disabled, the screen goes
black, and the processing of the computer is in-
creased, as now it doesn't have to waste time putting
information on the screen. Math calculations can be
speeded up by as much as 35% by using this feature.
At any time during a program, you can enable the
screen to check what's going on, then shut the screen
off again to speed things up. Function F3+CNTRL
will shut off the keyboard "click". The IZOOXLhas
no internal speaker — the keyboard clicking sound
now comes from the TV or monitor. F4+CNTRL
will give you the European character set.
Function key F4, when pressed with the CONTROL
key, will provide the European Character set.
AI
so.
The inverse video key replaces (or rather dupli-
cates) what the ATARI logo button on the 400/800
accomplished. There are also three LEDs, just above
the 1200XL logo. One is for power ON; the others
show various functions, such as European character
set in use, etc.
Some of the software features of the 1200 include
user programming of the function keys (even the
HELP key ). Also, most of the keys on the 1200 key-
board are redefinable. The keyboard is of the
QWERTY type found on most typewriters, but
through software you can change the keyboard
format to Dvorak or alphabetical (see Issue 9, page
105).
The new operating system allows you to alter the
rate of the auto-repeat. Through software you can
Kave the characters put on the screen at either faster
or slower rates, while holding down one character
key.
Of course, the most visible attribute to the
1200XL is its sleek, low cabinet. I always thought of
the 400/800 as quite futuristic, but next to the
1200XL, they do look rather "clunky." The inside
of the 1200 is also sleek, as nearly all of the compo-
nents are on a single board, thus reducing problems
in reliability.
To quote ATARI, "with its user aids and beautiful
packaging, the model 1200XL is one of the 'friend-
liest' computers ever built. . .it will be a handsome
and useful addition to any home." I quite agree. D
The power switch, single cartridge slot, and two con-
troller ports now reside on the left side. ATARI responded
to user comments that the joystick / paddle wires were
always in the way on the computer's front. They also,
apparently, feel that only two controller ports are neces-
sary.
FEATURES OF THE 1200XL
OPERATING SYSTEM
The operating system of the 1200XL has been
altered as much as possible to give it additional
features, but at the same time, increase its computing
power. Compatibihty between this model and the
400/800 was of prime concern to ATARI, thus tech-
nical material on the two previous models applies to
the 1200 as well. Here I will attempt to cover some of
the additional functions of the 1200.
As mentioned in the overview of the 1200XL,
many new features are implemented, such as one-
touch cursor control, the HELP key, DMA enable/
disable, and the additional European character set.
All of the keys can be user defined with the exception
of the BREAK, SHIFT, CONTROL, SYSTEM RE-
SET, and CONTROL+ FUNCTION KEYS. In addi-
tion, the HELR START, OPTION, and SELECT
keys must be handled somewhat differently.
Some important features on the 1200XL are the
additional graphic modes that were previously un-
available to the 400/800, except through machine
language. What we at A.N.A.L.O.G call graphic
modes 6Vi and TVi, plus the multi-color character
sets, are now readily accessible, even through
BASIC. Of course, to utilize the 4-color character
set, you must still redefine the characters.
Illffflllllllilllililill
The i20oXL's rear panel contains the I/O ports
previously found on the 400/800 right hand side: the
standard ATARI serial port, TV connector jack, monitor
jack, channel 2/3 selector, and power socket. The
1200XL uses the same power transformer as the 400/800.
One nice feature, not used up until now on micro
computers, is a fine scrolling screen. When you type
or list a program on the ATARI, and reach the end of
a line, the screen will "coarse scroll" up. It is possible
on the 1200 however, to smoothly fine scroll the
screen; an impressive feature.
A more serious feature is the added disk handling
system. One setback on the 400/800 was the limited
string length of 128 bytes. The 1200XL can read and
write sectors on the disk from between 1 and 65536
bytes. The default, as in the 400/800, is set at 128
bytes, however under software control you can reset
that value. The 1200 also has the capability to ignore
the read-after-write verification on disk I/O opera-
tions.
We will cover the how-to-get-all-of-these-neat-
things-to-work in a later issue, once there are
1200XLs out on the market. As you may have no-
ticed, the 1200 attempts to take the idea set forth by
the 400 and 800 just one more step towards human
engineering. D
The 1200XL in all of its glory. This prototype (one of
only 5 in the US!) lacks the white lettering that will
appear just above the strip of metal keys, making their
functions clearly marked to the user.
ATARI
A Warner Communications Company y^
1200XL Specifications:
ROM: 16K
RAM: 64K (empty)
37K (w/BASIC + OP. System)
GRAPHIC MODES:
0...
..40x24
1 color, 2 lum)
TEXT
1...
..20x24 (
5 colors)
TEXT
2...
..20x12 (
5 colors)
TEXT
3...
..40x24 (
4 colors)
GRAPHICS
4...
..80x48
2 colors)
GRAPHICS
5...
..80x48 {
4 colors)
GRAPHICS
6...
.160x96
2 colors)
GRAPHICS
7...
.160x96
4 colors)
GRAPHICS
8...
.320x192 (
1 color, 2 lum)
GRAPHICS
9...
..80x192 (
1 color, 16 lum)
GRAPHICS
10..
.80x192
9 colors)
GRAPHICS
11..
.80x192 (
16 colors, 1 lum
GRAPHICS
12..
..40x24
5 colors)
TEXT
13..
..40x12
5 colors)
TEXT
14..
.160x192
(1 color, 2 lum)
GRAPHICS
15..
.160x192
4 colors)
GRAPHICS
I/O:
Monitor
Serial I/O
utput
Televisior
75 ohm
2 parallel (controller) ports
1 cartridg
e slot
256 colors; 4 so
und channels —
3V2 octaves
FEATURES: H
ELP key
DIMENSIONS:
4 user programmable function
keys
1 touch cursor control
user DMA enable/disable
user keyboard enable/disable
user definable console keys
15"w x 12V2"d x 2%"h
weight = 6V2 pounds
Cabinet: brown & cream high impact plastic
with brushed metal trim and transparent plas-
tic accenting; Three LED indicators
"■-'.J^^^S%^!!^ ^^-^^.-^
■'^::f'"^.i-'>:,j^oz,""'M;
Se
INCLUDES 2 JAM-PACKED'
DISKS OF DATA BUT WILL WORK
ON YOUR 1DRIVE MICROCOMPUTER
ART COPYRIGHT
19B1 RAYMOND BAYLESS
APPLE
AND
TRS-80
TEXT-ONLY VERSION
534.95
ATARI
VERSION
WITH FULL
COLOR GRAPHICS
539.95
dventnr6
INTERNATIONAL
A DIVISION OF SCOTT ADAMS, INC.
r=^ : ^1
/^
WmSm
iKmMi
been it«tk
oothoa.
1 You may angogo him (T), c
r leave r^J.
1 '■ l|
NOW AVAILABLE FROM YOUR LOCAL DEALER OR DISTRIBUTOR
OR ORDER TOLL FREE (800) 327-7172 OR
BY MAIL FROM ADVENTURE INTERNATIONAL • BOX 3435 • LONGWOOD, FL 32750
AL0CKEDDO0R!Sf!IH!SWi!!W '■'"■"" '"■"'
Aoi 12 Houn tDKhe the nuaa
STiS\C«iSS
'^^
^>,
J
REWRmNG
nraiASMSTAS
At the rate we're going,
we'll have these pages
filled by 2083. And by
2084, people will be
clamoring for the next
Infocom creation.
We hate to disappoint our
public. So we keep you waiting.
Because while the software facto-
ries are cranking out arcade game
after arcade game, pulpy adven-
ture after trite fantasy, we're
writing and rewriting, honing and
perfecting. Before a single person
enters one of Infocom's worlds,
it must be crafted into a living,
riveting, definitive experience.
WECAN!
Judging from the public's reac-
tion, it's worth the wait. For
instance. Creative Computing
welcomed DEADLINE™ as
"thoroughly engrossing and real-
istic," while a Softalk readers'
poll recently voted ZORK™ I and
ZORK II the most popular adven-
tures of 1981.
And now, for the moment, your
wait is over. ZORK III, your final
step in the underground
trilogy, and STARCROSS,™
an exploration of a new
dimension in science fiction,
are ready for you.
Look at them up there,
the little worlds of Infocom. As
our universe expands, compan-
ions will come to help fill that vast
expanse of white space. Till
then, they'll continue to stand
alone as the best of all possible
worlds.
inpocoia
55 Wheeler Street, Cambridge, MA 02138
Infocom's worlds are available for Applef Atari? IBM, TRS-80f Commodore, NEC, Osborne, CP/Mf and DEC."
Apple is a registered trademark of Apple Computer, Inc. Atari is a registered trademark of Atari, Inc. TRS-80 is a registered trademark of Tandy Corporation.
CP/M is a registered trademark of Digital Research, Inc. DEC is a trademark of Digital Equipment Corporation.
TAKE A CLOSER LOOK AT YOUR DISKS
SEE WHAT'S REALLY THERE
WITH
DISKED
(disk'°ed)
by Mark Logies
THE DISKED UTILITY PACKAGE contains numerous utility
programs plus a comprehensive users' manual. With DISKED
you can view and edit the contents of any sector in HEX,
DECIMAL or CHARACTER (ATASCl! or SCREEN CODE). You can
disassemble programs into 6502 mnemonics using virtual
addressing. You can recover deleted files, save crashed
diskettes, map used and crashed sectors, copy any sector or
block of sectors, move cassette boots up to disk and vice
versa, create immediate mode files and multi-boot disks,
PLUS MUCH MORE!
Each program is listable and user adaptable.
Runs in 24K ONLY $89.95
Call or write for more information on all of our software.
GET MORE OUT OF YOUR INVESTMENT
EXPAND YOUR ABILITIES WITH DISKED
ic cam; >'i,vp cinck pr ipniv oroh; to-
^ •- ENTERPRISES
PO BOX 25612
n^RFIElC 4Fir,HT< OH j4'2S
(216) liTi-nsG
OROtRM .'.IlLST r.VlUUt jil.jt iri.'friM^ AND KANBUNG.
MAGIC MAIL*
An exciting New DauBuicMdiling^ind Personal InrurmaiionSysIcm for your Atari 4(M)/80O**
Pcnonal Compuier. Never before have all ihesc I'caiurei hecn Jesigned inio i single Mailing and
Informalton System, so easy lo use and su powerful
COMPARE THESE FEATURES:
Daia Fields; Name. Address, tily. Slaic. ^ip Code,
Area Code. Phone Number. Binhduy (m/d/y),
and Enlry Type.
Up lo llt^7 reeofds per Diskette!
:r').'^%uryuur Dalu. and 2-4 seL'onJs over ihe
Up lo 63 SEPARATi: and UNIQUE files pertnillcd per Diskclle
Single or Double Disk Drive C'upahility.
Buili in SORT, capable ofSoning ANY Dala f-ilehy ANY Field wiih up lo IIJ Sub-
Helds.
Commund-Uriven wiih simple Engli.ih-like Lommands: I IND. MODIFY.
PRINT. ADD. SORT. ele.
Posiiion Independcnl Sl Position Depcndenl Fields.
Files compatible with Atari DOS II.'*
Recorded on High-Qualiiy Verbatim Diskelles.
Every Diskette Pretested for Bad Scetorv and recording integrity.
Versions fen Epson MX-MO. Prowriicr. Centronics
Print Single-width Mailing Labels or Directory Listing.
100% Machine. Language.
16 K Minimum Memory.
hO-Pagc User Manual
90 Day Buyer Protection Guarantee.
Call or write for FREE additional
MAGIC MAIL is a Trademark of A-BIT-BETTER Software
ATARI is -A Registered Trademark of Atari Inc.
Search time is for an Indcied File.
aees
A-Bil-Battef Sofl»wara *—
Post Office Box 28
Uurel Md 20707
(301)953-7256
Dealer Inquiries Invited.
aV-""
Q: What is the hardest thing in the world?
A: Tearing yourself away from an EPYX game.
^^■i^^--^
Nobody but nobody builds more lasting
playing value into their computer games
than EPYX.
EPYX — computer games thinkers play.
EPYX — producers of award-winning games
(including "Crush, Crumble and Chomp";
"Dragon's Eye"; "Temple of Apshai".. .and
dozens of other thinking games.) For Atari*
Apple,* Commodore,* Radio Shack,* and
IBM* personal computers. EPYX — the
leader in computer game quality,
creativity, innovation.
You will love them all.
Write or phone for our latest catalog; it's
absolutely free. . .we even pay the post-
age. Or stop in at your favorite computer
dealer. He should have a supply of catalogs
and he can also show you some of those
marvelous EPYX games in action.
'The trademarks, respectively, of Atari, inc.; Apple Computer, Inc.;
Commodore International; Tandy Corp.; International Business
Machines. And EPYX is the trademark of Automated Simulations, inc.,
just so you don't forget.
AUTOMATED SIMaLATIONS
1043 Kiel Court
Sunnyvale, California
(408) 745-0700
No
On
Ca
Experience the
MicroProse Challense!!!
«se«e»
CHOPPER RESCUE
Zip up your flying suit and strap yourself into your sleek assault chopper:
CHOPPER RESCUE ctiallenges your skill and daring. Pilot your nimble
craft through the treacherous underground labyrinth. Search out and
rescue the captives trapped inside. Danger approaches from all sides as
defenders fire winged missiles and sparkling energy bursts at yourfragile
craft. But you are not defenseless, your explosive tipped rapid-fire
missiles dart out to blast a path through the dense minefields. Thread
your bomb directly into the heartof their pulsating nuclear furnace. And
just vi^hen you think the path is clear, a swift patrol drone appears from
behind a ledge, spitting missies as you scramble for a firing position!
CHOPPER RESCUE features three scenarios, multiple skill levels, and
competition in solo or team configurations for 1 to 4 players. Immerse
yourself in the non-stop excitement of CHOPPER RESCUE. You'll keep
coming back for more!
Requires ATARI® 32K, Disk or Cassette . . . $29.95
HELLCAT ACE
HELLCAT ACE is a superbly realistic re-creation of WWII Air-to-Air
combat in the Pacific using a fully three-dimensional airspace. HELLCAT
ACE puts you in the fighter cockpit with its unique pilot's eye view. To
escape and destroy the tenacious enemy fighters, HELLCAT ACE allows
you a full range of high-performance aerobatics; including loops, stalls,
rolls, immellman turns, and spins. The fifteen well documented scenarios
include combat air patrol, night action, and kamikazes — and, if things
get out of hand, you can bail out or attempt a water landing in your
damaged fighter! HELLCAT ACE includes multiple skill levels and options
for up to four players. Can you avoid being shot down and win five
victories to become a HELLCAT ACE?
Requires ATARI® 40K, Disk or 32K Cassette . . . $29.95
For aerial combat challengeandexcitement over Europe in WWII fly the
SPITFIRE ACE!
Requires ATARI® 40K Disk or 32K Cassette . . . $29.95
FLOYD OF THE JUNGLE
Looking for a fun game you can play with your family and friends? FLOYD
OF THE JUNGLE is a great game up to four people can play simultane-
ously! Can you be the first to guide Floyd through the jungle peri Is to save
the lovely Janice? It isn't easy! Floyd must leap the poisonous snakes,
climb the slippery vines, ride the elephants, and cross the raging rivers.
FLOYD OF THE JUNGLE includes fully-animated wild animals, music,
sound effects, and five different multi-color jungle adventures.
Requires ATARI® 32K, Disk or Cassette . . . $29.95
MicroProse Software is dedicated to bring you games that will challenge you far beyond the first few plays. We promise you hours of
excitement and pleasure. Our games are created using "MicroProse", our own proprietary assembly language gaming system, and are
available at select computer stores.
PHONE: (301) 357-4739
For Fast Delivery by C.O.D.,
MasterCard or Visa ... Or
Send Check or Money Order . . .
Please add $2.50 shipping/handling.
Maryland residents add 5% tax.
Dealer Inquiries Welcome!
MicroProse Software
One Caribou Court
Parkton, Maryland 21120
ATARI® is a registered trademark of Atari Inc.
ATARI 400/800 UPGRADES
FROM NEWELL INDUSTRIES
GET THE MOST OUT YOUR COMPUTER
FASTCHIP - ATARI 400/800
FASTCHIP can' give yo
the speed of the origina
Atari BASIC uses these
FASTCHIP is a pin compat
original. It can be inst
permanent replacement fo
no modifications, cuts,
comes with a 90 day full
during this period for a
Some reference times (in
FUNC:OLD ROM: FASTCHIP
ATN 128 62
LOG 129 33
A 236 65
SIN 85 30
$41.95
u up to three
1 floating po
outines for a
ible ROM that
ailed in minu
r the origina
or wires to a
warranty. Re
full refund,
seconds) (in
FUNC:
CLOG
EXP
COS
SQR
and 1/2 times
int routines.
Imost everything.
replaces the
tes , and is a
1 rem. There are
dd. FASTCHIP
turn undamaged
1000 loop) :
OLD ROM: FASTCHIP
120 30
112 34
84 33
135 55
RAMROD MHOS - ATARI 800 ONLY $159.95 (less memory)
RAMROD is a new operating system board that
replaces the existing board. It gives the user the
flexibility of using either the existing operating
system roms or it is switch selectable to use EPROMS.
This allows the user to change the operating system to
meet any needs that might arise.
RAMROD also addresses the 4K of memory not
currently accessible in the system. It also is switch
selectable and may be used as RAM, ROM, or a
combination. This ram is usable by software such as
SPREADSHEETS, WORD PROCESSORS, and certain LANGUAGES
to mention a few, without modification to the existing
operating system. Complete with instructions and
recommended modifications. 1 year warranty.
PLUS, every board comes with SUPERMON ! , a resident
machine language monitor written by David Young. It
features many powerful debugging commands like
display/ alter memory, disassembler, printer and disk
interface, etc. The disk interface has many features,
including the ability to access single or multiple
sectors in sequential or linked mode, S/D or D/D. And
you can call it up at any time. A sophisticated yet
simple program to use.
WITH 4K RAM $169.95
WITH 12K MfeMORY (4K RAM, 8K EPROM) $189.95
PRO BOWLING VERSION THREE - ATARI 400/BOO $24.95
This game is written in Basic and machine
language and is an accurate simulation of the sport of
bowling. There are ten skill levels to give challenge
to the best of computer game players. Features
redesigned character set, automatic scoring, sound,
and P.M. graphics.
REQUIRED ACCESSORIES:
DISK DRIVE
BASIC LANGUAGE CARTRIDGE 32K MIN. MEM.
ONE JOYSTICK CONTROLLER PER PLAYER
ATARI SOFTWARE( LIMITED SUPPLY)
ENTERTAINER/CX481 $59
MISSILE COMMAND/CXL4012 $24
STARRAIDERS/CXL4011 $27
CONV FRENCH/CX4119 $33
STOCK ANALYSIS/CX8107 $14
STOCK CHARTING/CX8108 $17
BOND ANALYSIS/CX8106 $14
MORT (, LOAN ANALYSIS/CX4115 $11
MAIL LIST/CX4104 $13
ENERGY CZAR/CX4121 $11
EDUCATION CARTRIDGE/CXL4001 $15
BUSINESS C0MMUNICATI0NS/CX6010 $17
SUPERVISORY SKILLS/CX6003 $17
MUSIC C0MP0SER/CXL4007 $30
VIDEO EASEL/CXL4005 $20
COMPUTER CHESS/CXL4009 $26
BASKETBALL/CXL4004 $20
EDUWARE COMPUMATH DECIMALS/CASS $16
EDUWARE COMPUMATH FRAC./CASS $16
JAWBREAKER/DISK $18
To order:Call 214-423-1781 or send check or money
order to NEWELL INDUSTRIES, 3340 Nottingham In., Piano
TX. 75074. Texas residents add 5% sales tax. Orders
outside the U.S. add 3% for shipping. C.O.D. orders
add $1.50. Sorry, no charge cards. Call or write for
additional information. Dealer inquiries welcome.
All NEWELL products also distributed by JERSEY SYSTEMS
800-526-3647. In NJ. 201-821-9441.
ATARI 400/800 are Trademarks of ATARI INC.
PROTECT
YOUR COMPUTER
special ^Ob99
COMPUTER COVER
Features heavy duty canvas with vinyl interior-waterproof.
ATARI-800/AC-8 '8.99 EPSON/ MX-80 =8.99
ATARI-400/AC-4 =8.99 EPSON/ MX-80FT =8.99
ATARI-8W/AD-D =8.99 IBIVt PC PRINTER =8.99
0KIDATA/IJ82A =8.99
Mail Order
■ii
SOFTWARE GALLERY
P.O. Box 3354
Cherry Hill, N.J. 08034
Call: (609) 424-7106
Add S2 for postage and handling.
N.J, residents add 5% sales tax.
Dealer & Distributor
^TRAV-LER^^
INC.
359 Wales Ave.
New York, N.Y. 10454
Call: (212) 993-7100
NOTE: Atari, Epson, IBM and Okidata are registered trademarks.
Uo
COMPUTER STORE
^
SOFTWARE GALLERY
P.O. BOX 3354, CHERRY HILL, N.J. 08034
(609) 424-7106
ATARI 800 aOK $ CALL $
ATARI 810 DISK DRIVE $ CALL $
Defender
Pac-Man
Galaxian
Centipede
$3a-95ea
32K Ram Board ^72.95
48K Ram Board M24.95
INTEC RAM BOARD FOR ATARI 400/800
PHONE ORDERS CALL (609) 424-7106 FOR
IMMEDIATE COD, SHIPMENT
^■■■i CHARGE IT WITH YOUR VISA
VISA' OR MASTER CARD l«*
■;| Add 3% for Master Card and Visa l^v^_3^_^j
''^*«^?A.
THANK YOU FOR YOUR ORDER!
DISK
AND
TAPE
$29.^=*
"THRAX LAIR" A FAST ACTION GAME WITH EXCEPTIONAL ANIMATION,
VARIETY, AND RESPONSE™ FLY THROUGH TWISTING CAVES...DODGE ENERGY
TORPEDOES^DESTROY THE EVIL THRAXi;
ATTENTION PROGRAMMERS: ASK ABOUT OUR ftO / 40
AND OUR NEW DISK UTILITY. >^X^ / — T V^
TO ORDER,CALL OR WRITE:
[303) 949-6646
BOX 5480 AVON,CO 81620
SPLIT
ATARI is a trademark of ATARI, INC.
Software
PAGE 44
A.N.A.L.O.G. COMPUTING
^SSUE 10
©AMe
16K cassette 24K disk
by Michael Duboy
^ H n Adventure is designed for joystick
^^m^^ input only. Move the joystick right
^^■■T^B for a yes answer or left for a no an-
V ■ swer. Use north (top of joystick) and
/ Ml . south directions to increase or de-
/crease the amount of food and water being pur-
chased by you. At other times these joystick posi-
tions will input the direction of travel. When you
have the desired amount of food and water, press the
fire button to acknowledge purchase.
The hero in the game starts out with only enough
food and water to last one day. Three moves are a
day's journey in game time. Abdul the loan shark is
always ready to loan a hero enough gold to provision
a short journey. He can be found at the "c" in "city."
There is a limit of 100 weight units that can be
carried by the hero. This should be taken into ac-
count when buying food and water. These provisions
can be obtained at the "i." Water is cheap, but food
is not. You buy these in amounts used in one day's
travel.
The journey to the lost city is long and perilous;
having a psychic companion along is always an ad-
vantage. A companion doubles the amount of weight
that can be carried. You can only have one compan-
ion at a time, but if he dies you can always hire
another companion. Remember though, that debts
must be paid. Companions can be found at the "t;"
but be prepared to pay their price or go alone. The
more a companion's asking price, the stronger he'll
be. Don't forget food and water for your companion!
Beware of the sea, as you're likely to drown. The
forest is swarming with bandits. The trail is longer
but safer than the forest, and — of course — there is
also a storm that can flood the trail.
When you arrive at the lost city you will notice
strange symbols on the ground. You must guess the
number these symbols represent. Here a psychic
companion will prove invaluable. His hints will re-
duce the number of guesses necessary to open the
stones. (Hint: Don't guess a number over 26.) Evil
spirits roam the ancient city. The longer you stay in
one place, the likelier it will be that they will appear
to steal food and water from you. When you tire of
adventuring, you can end the game and obtain a
rating by occupying the "y" in "city." You'll find
leaving the lost city a lot harder than entering it.
The following variable descriptions should give
the reader the opportunity for modifying the game.
For example, islands and a sea adventure can be
added to the game; also a trading post or another
city. □
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 45
DOCUMENTATION
Variable(s) Purpose
A C D O Represents constants in order to save
memory
ITY Turns off(l)/ on(0) loan subroutine
A$ B$ C$ Used to randomize alphabet; C$ also
holds output strings
HP Strength of Hero
GD Amount of gold carried by hero
F Food units
W Water units
WT Weight units
WT$ Used to round off weight units
GX GY H X y coordinates and shape of pixel
moving to
X Y HI X y coordinates and shape of pixel
S Direction of joystick moved
RD Probability factor of an event
B Number of adversaries
DEC Number of adversaries killed
NAME$ Contains various phases
E Used in interpreting joystick moves
HPB Damage done by Adversaries
HPC Strength of companion
U 12 13 Temporary variables
IT Amount of loan repayment
I Temporary indicator of who is being hit
T Increases or decreases amount of gold
found
GUESS As GUESS increases in value the prob-
ability of Evil Spirits increases
ITC Amount of gold in debt to companion
for
3 ft=l:C=fl:O=0:O=*:ITV=O:GRdPHIC5 fl:G05
UB 1240: GOTO 1278
4 ? CHRStl25J iRETURM :REM Clear screpp
5 GK=GK+0:GV=GV+ft:RETURII :REM MoveHent
5, R. lines 5-14
6 GK=GK+0:GV=GV-«:RETURH
7 GK=GX+fl: RETURN
9 GK=G)<-fl:GV=GV+0:RETUBM
10 GK=GH-0:GV=GV-0:RETURH
11 GX=GX-fl: RETURN
13 GV=GV+ft:RETURW
14 GY=6Y-ft! RETURN
15 RETURN
30 FOR Tl=6 TO lOOOsNEKT I1:RETURN :RE
M l>ELflV
40 RD=INT CieO«RND CO) +A) : RETURN
58 FOR I2=ft TO 11:READ I1:S0UND 0,11,1
0,6: FOR IZ-a TO 25:MEKT 13: NEXT 12: RES
TORE iRETURN :REM Play tune
99 IF ITVrO THEN RETURN :REM Loan S. R
100 GOSUB D:?
ieces."
101 ? " Greetings
Vou have ";GD;" gold p
I'M Abdul. Need a lo
an?":G05UB 160:IF E=ll THEN G05UB 258:
GOSUB 30; RETURN
182 GOSUB 48:? "I Offer you "jCRD+SOJ;
" gold pieces. ":IT=2«iRI>+50) :? "RepayM
ent will be ■■jIT:G05UB 38
103 ? " Accept?" :GOSUB 160:IF E=7 T
HEN GDz6D+RD+58:ITV=A:605UB 258
104 RETURN
185 GOSUB &:' "Food for how Many": NAME
$-'• days?";G05UB 30:E=O:GOSUB 288:GI>=G
0-E«2
186 IF GD<0 THEN 6D=GD*E»2 : GOSUB D:' "
NOT ENOUGH GOLD ! "; CHR$ tl57J : GO
SUB 38:G0T0 105
108 F=F+E«6: GOSUB 258: IF GD<1 THEN RET
URN
189 GOSUB 30: GOSUB D:? " Hater for how
Many": GOSUB 38 :E=0: GOSUB 200:6&r6D-l:
M=M+E«3: GOSUB 258: RETURN
116 IF C=2 THEN RETURN ;REW Hire coMpa
nion
117 GOSUB D:? " Need a coMpanion?":GOS
UB 168:IF E=ll THEN GOSUB 258:RETURN
118 GOSUB 0:? " Your coHpanion wants "
,-:GOSUB 48:ITC-RD»t258-HPJ :? ITC:" in
gold "
119 ? " to be payed to hiM or his heir
after the adventure. Accept?":G05UB 1
69: IF Erll THEN RETURN
128 C=2:HPC=INTC8.01»ITC+8.5*HPI : GOSUB
258:RETURN
121 IF GD<2e8 THEN RETURN :REM RATING
122 GD=GD-(ITC+IT3 ; GRAPHICS 2:P0SITI0N
8,4:? tt6:"V0Ufl RATING IS:"
123 IF GD>2888 THEN CSr" AUENTOR"
124 IF G0M8888 THEN CS=" G8RDENT"
125 IF GD>28e8e THEN CS=" SUERGBRD"
126 IF GD<2881 THEN C5=" HINDMOST"
127 IF GD<0 THEN GOSUB D:? tt6;" YOU'UF
BEEN PUT IN DEBTORS PRISON!"
128 GOSUB 30:? tt6;CS:? "WANT TO PLAV A
GAIN?": GOSUB 168: IF E=7 THEN POP :RUN
129 END
158 RO = INT (ie8«RND <0J +A) : RETURN
168 E=e:IF 5TICK(0)=7 THEN E=7:RETURN
:REM lines 168-18e;yes/no routine
170 IF STICK C0J=11 THEN E=11:RETURN
180 GOTO 168: REM YES NO ROUTINE
190 REM Counting S. R.
288 E=E+l:IF STICK<0)=13 THEN E=E-2:IF
E<0 THEN E=0
210 GOSUB D:? NAME$;E:IF STICKC0J=13
R STICK(0)=14 THEN 200
220 IF STRIG(0)=A THEN 218
230 RETURN
240 S=STICKC8) : GOSUB S:RETURN
250 POKE 77,O:MT=F/6+GD/ie80+W/2:HTS=5
TRStWTJ :MT=UALfHTS) :IF MT>108«C THEN G
OTO 598
268 IF M<0 THEN C5-"0
B":GOTO 338
270 IF F<0 THEN C$=" Starved to death!
":GOTO 330
280 IF HP<A THEN C5=" DIED FROM MOUND
S":GOTO 330
298 IF HPC<A AND C=2 THEN GOSUB D:? "
COMpaion is dead,":GOSUB 38:C=A:GD=GD-
ITC:ITC=8
388 GOSUB D:? CHR:$tl57> : " firailil " : " ";"HP
=";HPj" "j"GD=";GD;" ";"MT=";MT;" ";"F
310 IF C=2 THEN ? " MiKIJ-rMiT!] " :" HP="j
HPC
320 RETURN
330 GRAPHICS 1+16 : POSITION 0,18: POKE 7
12,232:P0KE 708,32:POKE 789,196:? tt6jC
S:G0SUB 30: goto 128
590 GOSUB D:? CHRSC157);MTj" Is too MU
ch weight!"
680 ? " Throw away how Much go^d?":NA^
ES="GOLD::": GOSUB 30:E=O:GOSUB 228:IF G
D>=E THEN 6D=GD-E
618 GOSUB D:? " How Much fOOd?":NAMESr
"F00D=":GOSUB 38:E=0:G0SUB 228:F=F-E
620 GOSUB D:? " How Much water?" : NAMES
="MATER=":E=0: GOSUB 38: GOSUB 228:W=W-f
:NA^«S="":GOTO 259
638 HEM DEC BANDITS
640 DEC::IHTCI1»RNDC03J :IF DEOB THEN I
EC=B
668 B-B-DEC:? " There are ";B;CS;" ";l
AMES;" killed "JDECJCS:HETURH
678 GOSUB D:? " There are ";B;CS:RETUI
N
698 GOSUB 48:RD=RD+Y:REM Drowning
718 IF H=16e AND C=2 THEN IF RD>48 TH
N GOSUB 0:? " CoMpanion has drown. ":C
A: GOSUB 38:GeSUB 258:RETUhN
DIED: LACK OF WATE
PAGE 46
A.N.A.L.O.G. COMPUTING
ISSUE 10
720 IF H=16e THEM IF R0>60 THEM CS="
Vou'we drown «":GOTO 3J8
738 IF H=160 THEM RETURN
740 IF H=0 AMD RD>93 THEN B=fl
750 IF H=32 AMD RD>80 THEM B=A
760 IF MOT CB=AJ THEN RETURN
770 REM BANDITS
780 B=IMTCHD/10>+V»CH<>0) :G0SUB D:C$="
bandits. "zGOSUB 678
790 DEC=0:I=C;G05UB 30:? "Want to run?
■':GDSUB 168:IF E=7 THEN RETURN
800 NAMES="VOU ■ we" : HPBrlMT tB«RMD COJ +1)
:IF B>0 THEN ON I GOTO 840,850
820 RD=IMT ( CK+11 / CV+1)#CT)«RDA2* tRD»H»
V)/ieJ:? "Vou'ue found ■';RD;" in gold
on the ■■;cS
830 GD=GD+RD:G05UB 50: RETURN
840 HP=HP-HPB:G05UB 258:G05UB 30:I1=HP
:G05UB 630:G0SUB 30:I=C:GOTO 800
850 MAMES="Vour coMpanion has ■■:HPC=HP
C-HPB:G0SUB 250:G0SUB 30
860 IF C=2 then I1=HPC:G05UB 63e:G0SUB
30
870 l=l:G0T0 800
880 REM TREASURE SO.
890 G0SU6 D:? " Treasure square"" :GUE5
S-0:NAMES="Guess is "
900 ? "Do you wish to go to another sq
uare?":G0SUB 160:1F E=7 THEN RETURN
910 GOSUB 40;IF RD>84-GUE5S THEM GOSUB
D:? "Evil spirts!":G0SUB 3O:W=INT(W-0
. 1»M3 : F=INT CF-0 . 1»F J : GOSUB 258
920 GOSUB 30:G0SUB D:? " What is your
quess?": GOSUB 200:I1-E+64:GUE5S=GUE55+
l:IF CHRStIl)=ASfH,HJ THEM 970
930 IF C=l THEN 900
940 IF CHRS(IlJ>ASfH,HJ THEM ? "COMpan
ion says go lower."
950 IF CHRSCIl}<A5:tH,H) THEN ? "COMpan
ion says go higher."
960 GOTO 900
970 GOSUB D:? " The stone has opened!"
:H=0:T=l:G05UB 58
990 Il=INTC3»RNDtO>+A) :0N II GOTO 1000
,1018,1028
1000 CS-" Goblins ":G0T0 1030
1018 C$-" Ores": GOTO 1030
1020 CS=" Ghouls"
1038 GOSUB 40:B=RD:G0SUB 670:GOSUB 790
: T=0 : RETURN
ieio'souND o,o,o,o:if gh<o then gx=o:s
OUMD 0,250,12,4
1070 IF GY<0 them GY=0:S0UMD 0,200,12,
4
1080 IF GK>19 then GX=19:S0UMD 0,180,1
1090 IF GY>19 them GY=19:S0UND 0,140,1
2,4
1100 REM «* Stores Pixel **
1118 LOCATE GK,GY,H:IF H=130 OR H::150
OR H=142 OR H=141 THEN H=H1 :GK=H : GV=V :
SOUND 0,100,4,6:HP=HP-fl:G05UB 258
1120 REM the IF THEN in 1110 Changes n
ew values obtained by LOCATE back to o
riginal if nove is illegal
1130 IF XOGK OR YOGY THEN F=F-2»C:Mr
W-C:GOSUB 250:REM Decreases food and w
ater on Move
1140 Hl-H:X=GX:Y=GV:REM keeps old galu
e of location and pixel until legal mo
ve is Made
1150 IF GD>5000 THEN PLOT 3,8:P0SITI0H
3,12:XI0 18,tt6,0,0,"5:":G05UB 1248
1160 SOUND 0,0,0,0:COLOR 251:PL0T GX,G
V
1170 IF H1>=1 AND Hl<=25 THEN GOSUB 88
8
1180 IF H=0 OR Hi:32 OR H=160 THEN GOSU
B 690
1190 IF H=99 OR H=105 OR H=116 OR H=:12
1 THEN GOSUB H
1200 IF STICK tO) =15 THEM 1200
1218 SOUND 0,MT,12,6:G0SUB 248:C0L0R H
:PLOT X,Y:G0T0 1050
1240 GRAPHICS 33:P0KE 708,180:POKE 712
,224:P0KE 710,132:POKE 756,226:P0KE 75
2,1:RETURN :REH CHANGES COLORS
1270 REM «« DRAW GRID AREA ««
1288 POSITION 1,1:? tt6;" city":POSITIO
N 10,10:I=A „ ,„
1300 FOR V=ie TO 19 STEP 2:F0R X=ie TO
19 STEP 2:C0L0R I:SOUND 0,1,10,4 iPLOT
X,Y:I=I+l:HEXT X:HEXT Y
1310 COLOR 150:PLOT 0,0:DRAMTO 0,3:C0L
OR 141:PL0T 0,4:DRAWT0 7,4:C0L0R 130:P
LOT 7,O:DRAMT0 7,3
1320 COLOR 142:PL0T 9,8:DRAMT0 19,8:C0
LOR 13e:PL0T 8,19:DRAMT0 8,9
1330 COLOR 0:PLOT 8,8:P0SITI0N 8,0:P0K
E 765,160:XIO 18,tt6,0,0,"S:"
1350 PLOT 8,19:DRAHT0 0,8:DRAWT0 7,8:P
LOT 0,7:PL0T 0,6:PL0T 0,4:PL0T 7,0:P0S
ITION 12,4:? «6;"aia"
1378 REM ** RANDOM ALPHABET «*»
*
1380 DIM AS(25J,B:5t25J,CSC25>,WTS(4),N
ANE$(28)
1390 AS="ABCDEFGHIJKLMNOPQRSTUUWXY"
1408 FOR X=l TO ie:I=IMTtl5»RMDfOJ+53 :
BS=AS tl , I-IJ : AS=AS CIJ : AS CLEM CASJ +1> -B$
;CS=AStll,20)
1410 CStLEM(CSJ+lJ=A5ll,10) :CS<LENCCSJ
+lJ=ASt21,25J :AS=CS:NEXT K
1420 HP=INTC100«RND(0>*100) :GD=3:F=6:W
=3
1430 GOSUB 250:GX=l:6Y=0:H=32:REM init
ial position of Hero
1440 GOTO 1140
1450 DATA 53,64,85,81,102,108,96,81,64
,53,0
(see DtCHECK 2, p. 26)
3 DATA 438,587,508,738,420,746,728,796
,806,811,767,88,265,251,638,8579
100 DATA 600,8,640,34,585,633,67,495,8
87,505,486,181,711,387,107,6246
122 DATA 513,201,396,262,468,966,553,4
1,210,417,890,383,565,609,689,7163
220 DATA 361,592,344,509,108,920,433,6
31,671,326,591,549,365,42,975,7417
620 DATA 764,852,451,24,765,187,140,18
0,583,709,927,979,241,574,452,7828
800 DATA 929,638,970,333,130,180,342,7
52,878,391,522,471,545,410,761,8252
960 DATA 733,253,540,910,530,389,481,7
35,942,954,946,284,518,654,374,9243
1140 DATA 802,83,138,837,401,551,368,3
82,268,530,685,945,278,481,289,7038
1350 DATA 575,448,303,953,772,394,118,
476,721,871,5631
We have over
1000 Educational Programs
for use on your
Atari 400/800 Computers!
You and your family will enjoy
learning in your home when you
Stop
Playing with
Your Atari
All along you've heard there isn't much of a
selection of low cost microcomputer course-
ware. Well, do you want to learn Physics,
Psychology, or Philosophy? Accounting or
Auto Mechanics? Sociology, Supervision or
Statistics? Economics or Electronics? How
about English as a Second Language? Would
you like to teach your children fvlath or Read-
ing? If you do, then we have the educational
programs for you— and at affordable prices.
It's true there aren't many companies that of-
fer full-length courses in subjects other than
reading and arithmetic, and what is offered
seems to be drills, tests, games, or simula-
tions. What you really want is a course that
covers the subject with, say, 16 full-length
lessons called tutorial programs, where you in-
teract with an expert programmer backed by a
staff of experts. That's exactly what we have.
ASK THESE QUESTIONS
Why haven't you heard of us before? We're a
public company that's been trading over the
counter for 1 6 years. We've been developing
interactive learning systems since 1 957. We
sell hardware and software for interactive film,
slide, video and computer learning to the
educational field, vo-techs, industries, military,
and several state and federal agencies. Our
programs are used in all 50 states and even in
some foreign countries! In 1 975, we started to
convert to the Talk & Teach Computer-Assisted
Instruction (CAI) System, licensed Atari to use
it in 1977, and in 1981 licensed Radio Shack
to use our Talk/Tutor System. So, why haven't
you heard of us? Frankly, we've kept a low pro-
file. Until now.
Is there something wrong with our software?
Well, we don't ask you to enter your name so
we can drop it into some later text. We don't
ask you to type in your answer and refuse to
accept it if it's not spelled just right. And, we
don't branch around a lot when you make an
error. Our programs simply let you know If
you're wrong by proceeding only when you
select the right multiple-choice answer.
This proven learning-by-positive-reinforce-
ment method lets you proceed quickly and
smoothly through the programs, without a lot of
cute tricks. But, if you're a devoted com-
puterist or game freak you may be disap-
pointed at the lack of motion in most of the pic-
tures, or our special visual effects. We have
some dandies, like the mushroom cloud that
rises over Hiroshima in our History series, but
your learning is not distracted by needless
special effects.
OVER 1000 PROGRAMS
We have 64 courses of 1 6 half-hour pro-
grams: 1024 programs! All are easy-reading.
upper-and-lower-case. All are in Atari color. All
are illustrated by frequent graphics, composed
of special and regular characters. And, best of
all, every frame of every program is accom-
panied by high-quality, full-time audio narration
by professional voice talent. David Stanton,
James Mathers, Pam Barrymore. Recorded
and played back, not synthesized or digitized!
— If your child is having trouble with Reading or
Math, or if he or she is exceptional, and
could benefit from professionally program-
med lessons or courses, then you need our
educational programs for your Atari 400 or
800 to help your child.
— If you want to build your math skills, we have
programs on Numbers and their meanings.
Addition, Subtraction, Multiplication, Divi-
sion, Fractions, Decimals, Percents, Angles,
Graphs, Word Problems, Algebra, Statistics.
There are ten series in all, 160 math pro-
grams. Again, all with color, pictures, and a
friendly tutor's voice— all the time.
— If your verbal skills need polishing, try our
Talk & Teach programs on the alphabet,
spelling skills, and every level of vocabulary;
Sight Words or Learn by Phonics; develop
Reading Comprehension skills from stories
and articles. There's even a series on the
Great Classics.
— For self-development, try a 16-program
course in Economics or Psychology. Or
Supervision, Sociology, Counseling (Per-
sonal, School, or Employee), Writing,
Business, Philosophy, Government, World
History, U.S. History, or Accounting.
— For vocational skills, study our 1 6-program
courses in Electronics, Fluid Power, Auto
Mechanics, Shop, Carpentry, Construction,
Meat Processing, Military Skills (64 pro-
grams), and there are many more.
YOU HAVE WHAT IT TAKES
You'll need your Atari 400 or 800, and the
Atari Cassette recorder. And to present the
Talk & Teach programs you need the Educa-
tional System Master cartridge: it's $25 from
us, if you don't have one.
We say these courses, which are recorded
one program per side of C20 to C30 (half
hour) cassettes, are the equivalent of a
chapter, or perhaps an hours lecture. We've
been told that by studying our Economics or
Psychology course, a student could pass a
secondary or college test for credit. Many who
have such credits never learned all that's in
these courses. And while some of our courses
have 1980 copyrights, most are 1981 and
1982. In U.S. History, for example, you'll learn
about America's foreign policy during the
Falklands crisis as well as that in the Mideast in
1982. And we're putting this information at
your fingertips.
Not sure whether you agree more with Ra-
tionalists or Existentialists? Do you commit
logical fallacies? Try our Philosophy course. If
you're not sure about neurosis or psychosis,
classical or instrumental conditioning, then you
need our Psychology course. Just how in-
dependent is the Federal Reserve? Get Eco-
nomics, Program 12. Confused about the
changes in traditional roles of political parties?
It's Government 5. And let our tutor tell you pa-
tiently and clearly about measures of disper-
sion and central tendency. Our Statistics goes
through F tests. We even have 16 full-length
audio-computer programs with Spanish words
and phrases.
Remember, these are all for your Atari! Yes,
we've done programs for TRS80 Model I, III,
Color, tor the Apple and T. I. But that's another
story.
Would you like to do something more than
play games on your Atari? Tired of squeaks and
robotics and want to hear a human voice? Do
you want to further your education or help your
children along in theirs? Now you can. For just
$9.90, we'll send you one cassette with 2 pro-
grams from the course of your choice, 100%
guaranteed to work in your Atari, and you can
try us out. Better yet, get one full course of 1 6
programs on 8 cassettes for only $59.90. For
full documentation, 32 pre-post tests, fancy
binder, 8 cassettes with 1 6 programs of the
course you want, send $79.00. That's less
than books and tuition for most college classes.
And we offer a 1 day, 1 00% exchange allow-
ance. Does your alma mater? Send us your
check, or call us at (405) 288-2301 with your
Visa/Master Card number. We'll send your
educational software pre-paid. Please allow 1 5
days delivery. Or see your Atari dealer. He
may have some of our courses in stock.
You've got nothing to lose but your games!
DORSETT
Educational Systems, Inc.
P.O. Box 1 226, Norman, OK 73070
(405) 288-2301 i^
Atari IS a trademarv ol Atvi. Inc Alan 400 and Atvi 800 we
trademarks ol Atari. Ir>c All retererKes shoukl M so noted
Four smart ¥iays
to make your Atari 400/800,
TRS-80 COLOR,VIC-20 and Commodore 64
much more inteHigent.
The Color Accountant pays
for JtseH. This complete per-
sonal financial package is
designed to make your money
easier to manage. Included are:
/. Checkbook Maintenance
2. Chart of Accounts
3. Check Searcti
4. Income/ Expense Statement
5. Net Worth Statement
6. Color Graph Design Package
7. Home Budget Analysis
8. Color Payments Calendar
9. Mailing List
10. Decision Maker
This unique menu-driven pack-
age requires less than one hour
data input per month. The Color
Accountant has over 60 pages
of documentation including
examples and step-by-step
instructions. TRS-80 COLOR
requires Ext. Basic and 16K for
cassette, 32K for diskette; Atari
400/800 requires 24K for cas-
sette, 32K for diskette; VIC-20
requires 16K Expander. Now
available for Commodore 64,
S74J5 cassette;
$79^ diskette
The Tax Handler makes
April 15th just another day.
This is the perfect complement
to our Color Accountant. The Tax
Handler will help prepare your
tax returns and probably save
you money. Included are:
1. Form 1040 (Long Form)— filing
status, exemptions, income,
income adjustments, com-
putation of tax, tax credits
and payments or balance/
refund due.
2. Schedule A (Itemized Deduc-
tions)— medical and dental
deductions, taxes, interest
expenses, contributions,
casualty/theft losses, miscel-
laneous deductions and
summary.
3. Schedule G (Income Averag-
ing)— base period income and
adjustments, computation of
averageable income and
computation of tax.
Additional schedules or altera-
tions to the tax codes will be
available separately in our
monthly magnetic magazines.
Atari 400/800 requires 24K for
cassette, 32K for diskette. VIC-20
requires 16K Expander. Now
available for Commodore 64.
S34.95 cassette;
S39.95 diskette
You'll love your computer
with The Magnetic Maga-
zine. Our magnetic magazines
will entertain, inform, educate,
challenge and delight you. Each
issue contains 4 to 7 ready-to-
use quality programs, all fully
listable. Every issue includes a
newsletter containing instruc-
tions, tips on programming
techniques and a line-by-line
examination of the feature
program. And starting with issue
number 8, the first in a series of
tutorials on machine language
programming, Database I with a
new application every following
issue and a new utility in our
Utility-of-The-Month section. And
word processing is coming soon!
A full year's subscription
consists of 10 issues— over 50
programs a year at a mere
fraction of their cost. Available
for TRS-80 COLOR Ext, Basic,
Atari 400/800; all require 16K.
Back issues available.
One year subscription:
$50.00 cassette;
$75.00 diskette
Half year subscription:
$30.00 cassette;
$45.00 diskette
Sample issue:
$10.00 cassette;
$15.00 diskette
VIK VIDEO issue 1 available
for VIC-20; $12.95 cassette
The Learning Center
teaches and enlightens
children. Our exceptional
educational programs are class-
room designed and tested. These
unique packages have been
invented to introduce 3 to 9 year
olds to the ease of computer
learning. Through the use of
basic concepts such as colors,
shapes, numbers and letters,
children understand counting,
math and language skills. Each
program is designed to develop
a specific skill, rewarding each
correct answer with music and a
happy face. Most are compatible
with our new Edumate Light
Pen $34,95.
Available for Atari 400/800,
\/IC-20 and Commodore 64; all
require 8K for cassette, 16K for
diskette. Also available for
Timex/Sinclair 1000 and TI-99.
Please ask about programs
available and their prices
for Pre-School, Kindergar-
ten and Grades 1 & Z
Prices range from $8.95
for a single cassette to
$79.95 for a complete set
on diskette.
Order now! See your local dealer or order direct. New catalog $2.00. Visa and MasterCard accepted-
please add $2.00 for postage and hiandling.
Call toll free!
1-800-334-SQFT
DEAUSR INQUIRIES INVITED
prograimnier'smnigl^te
*• ^^ a division of PUTUBB HOUSE — dent. aJ
a division of PUTUBB HOUSE — dept. al
P.O. box 3470, cliapel hill, north Carolina 27514, 919-967-0861
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 49
Computer bulletin boards are systems that are
accessed over the telephone network and offer file
space for messages, questions, answers, want ads,
phone numbers for other bulletin boards, and public
domain software. They are provided by hobbyists,
user groups, or dealers, and once your ATARI is
equipped with a modem and terminal software, the
cost of using a bulletin board service can be limited
to telephone charges. Some boards do limit general
use to portions of their files by requiring passwords.
For example, a user's group might give the password
for their best programs only to paying club
members. The major services, Dow Jones,
CompuServe, and the Source, are the largest bulletin
boards, and these services bill for usage.
This article presents information about smaller
bulletin board systems, particularly those catering to
ATARI users, and details on how to get a novice
started with the ATARI Communicator package or
equivalent pieces. First, a bit of background on the
capabilities of the ATARI and the functions of the
pieces in the Communicator kit is in order.
The ATARI offers significant advantages over
other home computers in its own (and higher) price
classes when called upon to double as a remote
terminal. When shopping for a home computer, my
list of requirements included two very specific items
only the ATARI could deliver!
1 ) Full ASCII character set from the keyboard.
and:
2) Minimum of 40 characters per line on a TV
display.
I intended to use the micro-computer at home to
access a mini at the office, and the full ASCII
character set (particularly lower case) was necessary
for work-related purposes. While you will not find
all of the 128 ASCII codes pictured on the keyboard,
they are there when the TELELINK I cartridge is
installed. Table 1 gives the keystroke sequences that,
when used with the TELELINK cartridge, will
produce the non-obvious ASCII codes.
TABLE 1
ASCII
CHAR. CODE*
mM
KEY-SEQU0<CE
{
}
DEL
e NUL COKTROL-SRACE
W Gpawe Accent CCNTROL-f (sraicolon)
123 Opening Brace CONTROL-, (couna)
125 Closing Brace C0KTROL-. (period)
12^ Tilde CONTROL-* (plus)
127Rubout (line) SHIFT-DELETE
mm SHIFT-BKtAK
My ATARI Communicator kit was ordered the
same day as the computer, and within an hour after
opening the boxes, I was conversing perfectly with
the mini 20 miles away. (It would have taken less
time, but my son naturally insisted on a few Star
Raider missions before I linked up.)
The Communicator kit includes the interface
module, an acoustic coupled modem, the
TELELINK I terminal program cartridge, and
appropriate power supplies and connecting cables.
There are also instructions on introductory access to
three of the great big bulletin boards that charge for
usage after your free hour is gone. The kit is a
bargain when compared to ATARI'S individual
prices, but there are alternatives to most of the pieces
which may reduce the overall cost, or increase the
capabilities. I'll treat each piece separately:
INTERFACE MODULE
The function of the IM is to "interface" the
ATARI peripheral port to an RS-232 serial interface
port (it has four) and a single Centronics pafallel
interface port. Serial ports? Parallel port? Really
quite simple. A serial interface or port puts the bits
that represent a character, 7 bits for ASCII, 8 bits for
ATASCII, a parity bit with ASCII, and control bits
(called start and stop bits) in SERIES on one wire for
each direction of transmission, plus a ground return.
A series of bits, in time, is necessary when a data
signal is to be carried over the telephone network. A
parallel interface or port puts each bit on a separate
PAGE 50
A.N.A.L.O.G. COMPUTING
ISSUE 10
wire, so there are seven PARALLEL wires carrying
the seven bit ASCII code, an eighth wire for parity,
and a ground return. The parallel port on the ATARI
IM is intended for connection to a printer, and a
printer only receives characters. Since data
transmission is one-way, there is only one set of eight
wires. In both the serial and parallel interfaces,
additional wires carry control signals back and forth.
"RS-232" is the name given by the Electronic
Industries Association to their particular standard
for the serial interface that operates at the speed
range of interest. This standard defines voltage levels
and connector pin assignments (at the modem), and
is used universally in the United States. "Centronics
parallel interface" is also a specification of voltage
levels and pin assignments (at the printer). An
American printer manufacturer, Centronics, defined
this interface years ago, and it has been adopted by
the printer industry as a standard. The ATARI 825
dot matrix impact printer is in fact a Centronics 737
parallel printer.
You can get into telecommunications without
buying the ATARI interface module. At least one
manufacturer (Microbits) offers a modem that plugs
into a joystick port. However, should you want to
add a parallel "Centronics type" printer, or upgrade
your modem capabilities (higher speed or auto-
dialing) later on, you will be out of luck. This type of
modem does not have the standard RS-232
interface, and requires special software to drive it.
Therefore, all the great public-domain smart
terminal software described later on in this article
won't work. While you would be saving about 35%
on hardware cost, my personal opinion is that, for
future flexibility, you would be better off sticking to
the RS-232 standard.
MODEM
The next item in the Communicator kit is a
modem. "Modem" is a contraction of modulator/
demodulator, and its function is to transform the
low-voltage, serial digital signal on the RS-232
interface wire to an analog signal that can be
transmitted over telephone lines, and vice-versa.
Modems come in two basic varieties: acoustic-
coupled and direct-connect. A third variety, which
the manufacturer calls direct-connect, but which is
really a hybrid, is also available. There are modems
capable of operating at several different speeds,
which actually means different analog (telephone
line) modulation techniques that increase in
sophistication (and cost) as the speed increases.
However, only two are of interest in bulletin board
applications. These are: 300 bits per second (bps),
where the modulation technique is simply two
standard audio tones that represent the state (0 or 1 )
of the bit; and 1200 bps, where the modulation
technique is somewhat more complex.
Both modulation techniques are based on Bell
System standards; the 300 bps technique is often
called Bell 103 compatible and the 1200 bps
technique is called 212 or 212A. These designations
come from the names of the Bell modems that
operate with the respective modulation techniques.
As all 1200 bps modems that operate with the 212A
technique are built under Bell patents, most
manufacturers call these modems 2 12 As. And most
212As also operate at 300 bps with the flick of a
switch. Rather than buying a modem, you have the
alternative, at least for a while, of leasing one from
your local telephone company. Because of recent
FCC rulings, you may be able to buy a Bell direct
connect 103 type or 2 12 A modem after the first of
the year 1983.
The modem that comes with the ATARI
Communicator kit is a 300 bps, acoustic coupled
unit that is a Novation Cat in ATARI clothing. An
acoustic coupled modem has two cups in which you
place a standard telephone handset after establishing
a call to the other computer. As used here,
"standard" means plain-old -ordinary; dial-in-
handset and designer models won't fit.
The hybrid modem installs between the base and
handset of a standard phone (which has a plug-ended
handset cord.) For other reasons, dial-in-handset
model phones will likewise not work with the hybrid
modem.
As the telephone instrument is doing part of the
work with acoustic-coupled and hybrid modems,
these modems are less expensive than true direct-
connect modems. But there are none in these
categories that are capable of greater than the 300
bps speed. The acoustic-coupled modems are less
reliable because they are subject to interference from
room noise, TV speakers, computer buzzers, etc.
True direct-connect modems are more reliable, more
expensive, and often offer some added features, such
as automatic answering and automatic dialing.
A word of caution. If you subscribe to two or
more party telephone service, it is against FCC rules
to use a true direct-connect modem. Such use could
in fact cause you and the other party(s ) difficulty and
embarrassment at billing time. Further, another
party trying to initiate a phone call when you are
transmitting or receiving data will surely mess up
your data (even with a legal acoustic -coupled or
hybrid modem). If you are a party line subscriber,
you will want to convert to individual line service
before trying data communications.
Finally, not all (probably "few" is more accurate)
of the small bulletin boards devoted to ATARI are
presenriy capable of 1200 bps. After all, they would
have to buy the more expensive modem too. But the
higher speed cuts their phone bills, so we can expect
that more and more will be offering the higher speed
in the future. All that are capable of 1200 bps are also
capable of 300 bps. Your decision on 300 vs. 1200
should be based on the capability of boards you want
to access and a trade-off between phone bills and
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 51
modem cost, which of course depends on your
contemplated use.
TERMINAL SOFTWARE
The next piece of the Communicator kit is the
TELELINK 1 cartridge. Its function is to provide the
software to turn your ATARI into a remote terminal.
It automatically sets some interface module options
— specifically 300 bps, ATASCII/ ASCII
conversion which ATARI calls light translation, no
parity, and a few other control functions. Once you
have dialed the host computer (bulletin board), your
ATARI becomes what is known as a "dumb"
terminal.
TELELINK I is convenient to use, but has no
capability to capture files in memory. It does have a
dump-to-printer option, but if you are after a new
BASIC game on the bulletin board, dumping it to the
printer only means you have to type it all in to play
the game. You might as well have typed it in from the
magazine. TELELINK I not only sends and receives a
full ASCII character set (per Table 1), but it also
displays grave accents, curly braces, and carets
properly on the screen. Not all terminal programs
have such a character set.
So how do you turn your ATARI into a smarter
terminal, one which can capture that program in
memory or a magnetic media (cassette tape or disk)?
Well, you can buy one of several smart terminal
programs, or you can save some money and get a
copy of one of the very fine smart terminal programs
that are in the public domain. But, you say, you don't
know anybody who has one. The answer should be
obvious — you download if from a bulletin board.
Later on in this article, we will discuss several of the
public domain smart terminal programs, and show
you step-by-step how to download one from a
bulletin board using the TELELINK I cartridge and a
short basic program. First, however, there is one
more item in the Communicator kit which deserves
discussion.
CONNECTING CABLES
The cable that connects the computer to the
interface module is no problem; it comes with the IM
which you buy separately or as part of the
Communicator kit, (If you choose the direct-
connect modem that plugs into a joystick port, you
don't need it at all.)
If you buy the ATARI modem, either separately or
as part of the kit, you will also get the IM to modem
cable. However, if you choose another modem, you
may have to buy or build a cable. The IM end of the
cable is not a standard RS-232 connector, but a
smaller one that I presume ATARI chose so they
could fit four serial ports on one edge of the IM.
ATARI supplies a cable that will work with any
standard RS-232 modem, but bought by itself, it is
quite expensive. If you have a wire stripper and a
small soldering iron, building a cable is
straightforward. You will need a DB-9 male plug for
the IM end and a DB-25 male plug for the modem
end. You'll also need a short piece of cable with at
least eight individual conductors, and the following
table of pin-to-pin connections.
TABLE 2
HODQI CABLE
DTR
CRX
XMT
RCU
28
8
2
3
no
6R(HJND
OSfi
RTS
CTS
IH connection
7
6
A
5
11
ESTABLISHING A CONNECTION
Now that you have all the pieces you need — the
interface module, a modem, and terminal software
— it's time to explore a bulletin board. You must
turn on the interface module before you turn on the
computer. If you are using TELELINK or a terminal
program on cassette, the RS-232 handler will boot
from the interface module when you turn the
computer on. If your terminal program is on a disk,
the diskette must also have a copy of the
AUTORUN.SYS file that came with the ATARI
DOS 2.0S master diskette. When the computer is
turned on, AUTORUN.SYS boots the RS-232
handler. The instructions that come with the
interface module are quite clear on the proper order
for powering-on the different pieces.
Set your modem for call-originate and full-duplex,
and make sure it is also turned on. Now, load and run
your terminal program. (TELELINK I, being a
cartridge, will automatically gain control.) If the
terminal program asks for options (TELELINK
doesn't), pick these: download, light-translation,
no-parity, full-duplex. Also make sure your modem
is set for the right speed as determined by your
terminal program (300 bps for TELELINK and most
other programs if unmodified to run at the higher
rate). If things don't go quite right, you might have to
try a different parity setting (try even first) or
translation option.
Call the bulletin board as though you were placing
a voice telephone call. If the bulletin board system is
on-line, it will automatically answer after one or two
rings and return a high-pitched tone. This is your
signal to switch to the data mode. If you have an
acoustic coupler, this means placing the telephone
handset into the cups on the modem. With a direct-
connect modem, there is probably a switch that says
"talk/data". Turn it to "data".
On your modem, a lamp is ht that indicates it too
can hear the high-pitched tone. If nothing else
happens, press RETURN a few times; the bulletin
board should wake up and announce itself on your
screen. Many bulletin boards first ask how many
"nulls" you need. Your ATARI needs none, so type
"0" (zero). It will also ask for your name, (probably)
location, and possibly some other questions; for
instance, can you support lower case (Yes).
PAGE 52
A.N.A.L.O.G. COMPUTING
ISSUE 10
After it is satisfied that you haven't dialed a wrong
number, it will tell you about itself and how to access
the message file and the program files available for
downloading. Pay close attention to the commands it
needs to pause (usually CONTROL-S), to resume
(usually CONTROL-Q,or any character), to abort a
file listing (usually CONTROL-C), and to
disconnect (usually CONTROL-D or "BYE"). It
may or may not understand a BREAK, and your
terminal program may or may not send one.
(TELELINK I does if you type a SHIFT-BREAK,
and CONTROL-TAB seems to work with some
other programs.)
The reason for the differences in commands and
responses is that different bulletin board programs
are used by the host computers. By far the most
popular for bulletin boards in general is a CP/M
program, but this is not true of boards devoted to
ATARI users. Naturally, most ATARI boards are
ATARIs, and ATARls don't run CP/M. There are at
least three fine bulletin board programs for ATARI:
AMIS, ARMUDIC, and TARI-BOARD. What you
need to do is explore the board, following its
instructions, until you are comfortable using it.
CAPTURING A FILE
I promised that I would explain how to capture a
listed file on magnetic media if you are starting with
TELELINK 1 dumb terminal software. You need a
short BASIC program like the following one. I call it
QP (quick and dirty) DUMP. It is customized for
CP/M. I chose CP/M simply because CP/M needs
some extra translation not required with the ATARI
programs, but this extra translation won't (except as
noted) bother AMIS, ARMUDIC or TARL
BOARD. If you use it with one of the ATARI
programs, there are some changes that will have to be
made to incorporate their different commands. The
statements needing attention are identified by
remarks. None of the interface module's default
options are changed, which makes QDDUMP the
same as TELELINK (300 bps, light-translation, no-
parity). QDDUMP also assumes your magnetic
media is a cassette tape. If you have a disk drive,
change line 210 appropriately.
10 DIM INLXNE$C12e), QUITS C5)
19 REM : DEFINE EOF FROM CP/M
20 0UIT5=CHRSC10} : 01JIT$ {2}="D0ME"
Z3 HEM :FIHD MEMORY AVAILABLE
30 N=FREC0J-256
48 N=N«|;h<=32767J+32767»IN>32767J
50 DIM TXTSCHJ
59 REM iOPEH RS-232 PORT
60 OPEN tt2,13,0,"Rl:"
78 KIO 40,tt2,8,0,"Rl:"
80 PRINT tt2;CHR$C17) :REM :START CP/M
89 REM .LOOP TO GET PROGRAM FROM CP/M
90 FOR I-O TO 1 5TEP
100 INPUT »2;IHLINES:TRAP 158
110 PRINT INLINE^
120 IF INLINESraUITS THEN 158
129 REM : APPEND INLINE$ TO TKTS
130 TKTSCLENtTXTSJ+lJ:iINLINES
148 NEKT I
148 REM : HAIT CBLINDLY)
149 REM : FOR CP/M PROMPT
150 FOR Trl TO 20eO:NEKT T
159 REM : SIGNOFF FROM CP/M
160 PRINT »2J"BVE"
170 CLOSE «2
190 STOP
198 REM : TO WRITE CASSETTE,
199 REM : TYPE "GOTO 200" OR "COHT"
200 DIM BYTSCIJ
209 REM : OPEN CASSETTE
218 OPEN tt3,8,0,"C:"
219 REM : LOOP TO WRITE TO CASSETTE
220 FOR 1=1 TO LEN(TKTSJ
238 BYT$=THTSCIJ
240 BYTE=ASCtBYTSJ
250 IF BYTE=18 THEN NEKT I
260 PUT tt3,BYTE
270 NEKT I
280 CLOSE n3:END
You will need a loadable copy of QDDUMP on
cassette or disk before you use it. Using TELELINK,
log onto the bulletin board system and get to the
point where the board is ready to send you the listed
file. With CP/M, this will follow your command
"TYPE" followed by a space and the filename. With
other systems, it may be as simple as picking a
number from a menu. You will have to tell CP/M to
stop after its initial response by sending a
CONTROL-S. Other systems may wait for you to
type RETURN before sending the file. The point is
that either it must stop or you must stop it, because
you've some fast work to do.
Replace the TELELINK I cartridge with your
BASIC cartridge and load and run QDDUMP The
first thing it does is dimension a string called
INLINE$, which we will use to download a Une at a
time, and a string called QUITS, which is the string
that the board sends when it is finished outputting a
file. With CP/M and a TELELINK in your ATARI,
this string appears to be "DONE". However, CP/M
speaks pure ASCII, and pure ASCII uses two
characters to delimit lines, a carriage -return (decimal
13) followed by a line-feed (decimal 10). The light-
translation option we picked changes the carriage-
return into an ATASCII EOL (end of line character -
decimal 155), but leaves the line-feed intact, and it
will appear at the beginning of the next line.
TELELINK throws the Une-feed away, and we will
do that too when we record the file. The reason we
don't throw it away when we get it is that we would
have to look for it and, in BASIC, that takes time.
We want the part of the BASIC program that is
accepting lines to be as fast as possible so we won't
miss anything. Line 20 of QDDUMP defines the
CP/M end-of-file as it appears to the ATARI,
without TELELINK. If you are talking to one of the
ATARI bulletin board programs, and you have told
it you don't need line-feeds, then omit the CHR$
(10) from the end-of-file definition.
Lines 30-50 find the maximum free memory that
can be used for a string and dimension it accordingly.
The more memory you have, the longer the file that
can be downloaded, as we will be adding each line we
download to the string, TXT$.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 53
Line 80 starts CP/M; CHR$ ( 17) is CONTROL-
Q,. This line should start any system, as it
automatically ends with a return. Lines 90 through
140 are the loop for receiving downloaded lines,
printing them on the screen, and adding them to the
string in memory. On an error, or when it sees the
string the board sends when it is done downloading,
QyiT$, we go to line 150 which waits blindly for a
prompt from the board and signs off. The "BYE" in
line 160 is the string CP/M recognizes as a signoff.
Having the program do this is to save phone time.
You've got to save the file you've captured on
magnetic media before you turn off the computer, so
you can't put TELELINK back in just yet.
Watch the light on the modem which lit when the
board responded with its high-pitched tone. It will
go out when the board recognizes your signoff, or
when it gets tired of waiting for another instruction.
(This is the dirty part of quick and dirty.) Hang up
your end of the phone connection, and return your
attention to your ATARI.
The TV screen should say "STOPPED AT LINE
190". At this point, you can type "PRINT TXT$" to
see what you've captured. If there are funny triangles
at the beginning of each line except the first, those
characters are the line -feeds we will get rid of in the
next part. If there are no triangles, you don't need
line 250, but it does no harm, other than to waste a
bit of time, to leave it there. After you have installed
a blank cassette in your 410, or changed Une 210 to
"D.-filename" if you are using a disk drive, type
"GOTO 200" or "CONT" and an enterable copy of
the downloaded file will be written to your magnetic
media.
Type "NEW" and ENTER the listed BASIC file.
You might get a couple of error messages if it finds
some statements that it doesn't understand, but you
don't want those anyway. Now you can RUN the
program, SAVE it, or anything else you could do if
you had typed it in.
PUBLIC-DOMAIN
TERMINAL SYSTEMS
If you have followed the admittedly cumbersome
technique outlined above, then you don't already
have a smart terminal program. When you have one,
you can throw QDDUMP away, because never again
will you need it. Don't throw TELELINK away,
however, because none of the public-domain ter-
minal programs have the full ASCII capability from
the keyboard that TELELINK does. Some program-
ming languages, notably 'C, make extensive use of
these characters.
There are several public-domain smart terminal
programs available. A version of one can usually be
found on any bulletin board catering to ATARI
users. I have used three, and while they all do a fine
job, each has unique properties. All three are written
in BASIC, but have machine-language routines to
handle character transfers at high speed.
JTERM, written by Frank Jones, is my favorite for
AMIS, ARMUDIC and TARI-BOARD applica-
tions, primarily because a few additions let it work at
1200 bps. It is the only one of the three that does. Al-
though written for disk, it is easily converted to read
and write listed files on cassette. With a litde bit
more modification to get rid of line feeds (such as is
done in QDDUMP), it will write an enterable pro-
gram file to cassette or disk. (Of course, this isn't
necessary when the bulletin board is running on an
ATARI, because ATARIs won't send the stray line
feeds.) To make maximum memory available for the
download or upload buffer, JTERM erases some of
its statements after initialization, so it can't be re-
started with a simple RESET and RUN command.
ATERM originated with two modem programs
published in A.N.A.L.O.G. Computing (Down-
load Terminal, issue no. 2, and Upload Terminal,
issue no. 3). These two programs were combined
and extended by Bob House and Marshall Abrams.
ATERM has the unique advantage of a help (instruc-
tion) file that should be written on the same disk as
the program. As it comes in three parts, it is incon-
venient for cassette users.
AMODEM, written by Jim Steinbrecher, is THE
program for CP/M applications. It works in con-
junction with a program called XMODEM on the
CP/M machine. With it you can upload and down-
load machine language, tokenized BASIC, and Music
Composer files as well as listed BASIC and text files.
And it's all automatic, including retrials if it deter-
mines an error has been made during file transfer.
Version 4 of AMODEM works with a cassette re-
corder. Version 4 can also be used with AMIS,
ARMUDIC and TARI-BOARD bulletin boards to
transfer listed files. Jim Steinbrecher has also pro-
vided a nice documentation file for Version 4. Ano-
ther very nice document is called "The XMODEM,
AMODEM, CP/M Saga," by Greg Leslie. I down-
loaded both from bulletin boards. AMODEM's only
deficiency is that it won't work at 1200 bps. I guess
the machine language routines have so much else to
do.
PHONE NUMBERS
So, you say, now I know how to access a bulletin
board. But how do I locate one to call? Never fear, for
the final table gives a list. I won't guarantee its accur-
acy, and certainly not its completeness, as new
ATARI boards are cropping up all the time. Current
lists are kept as files on many of these bulletin
boards. Many of these boards are not 24-hour-a-day
operations, but most will be on-line nights and
weekends. If a voice instead of a tone answers, the
voice will be able to tell you the hours of operation.
Who knows, maybe soon you will be the "SYSOP"
of your own ATARI bulletin board. D
(continued on page 55)
DON'T ASK PROVIDES THE MISSING LINKS
oo>the link between your modem and the outside world. For hassle-free
communications, phone right in with TELETARI, The Friendly Terminal.
Your Atari has never had such easy access to the whole world of telecommunications - bulletin boards, news reports, large time-
sharing computers, the works. Now it's a snap to tap into all these, and it's just as easy to transfer your program or text files to and from a
remote computer. Meet TELETARI, The Friendly Terminal. It's just what your modem needs: a powerful, adaptable telecommunications
package that's a cinch to use. With TELETARI, you simply choose the desired communications function from a menu. Commonly used
terminal parameters are included in the program, but you can change them to suit your needs with a couple of keystrokes, using another
handy menu, and store the ones you plan to use again. TELETARI's generous buffer stores up to 20K, so you can review, print, or save
received information long after you've hung up the phone. You never knew using a modem could be so convenient. Because it's very
flexible, TELETARI is compatible with most modems and a wide variety of computers. And because it works through the RS 232 port,
TELETARI is not limited to modem/telephone uses. Put it to work in any RS232 application your imagination can devise - even operating a
laser disk!
• buffer of up to 20K •menu-driven • highly adaptable • supports all 850 options
• compatible with 1 200 baud modems and BIT 3 Full-view 80™ board • suitable for any RS232 application
$39.95 Requires Basic, 32K RAM, disk, 850 Interface
CX» the link between BASIC and arcade-style graphics. Draw and animate pictures for your own BASIC games
and other programs with pm ANIMATOR. Create running men, flying rockets, moving figures of all kinds.
A
^
i
^
1
BASIC programmers, pm ANIMATOR puts the power of
Player-Missile Graphics at your fingertips.
$34.95 Requires 32K RAM, BASIC, disl<.
"^animator
To order direct from Don't Ask, send a cfieck or money
order, or call to order COD. Add $2.00 for shipping and
handling. California residents add 6% sales tax (6.5% if
you reside in L.A. County).
C>-C» th»e link between fast game action and verbal learning:
^=i!!l>Rl>RAC^
Kids and adults, increase yourvocabularywhileyou compete in this
exciting word game.
Disk version:
3 levels of play - Beginner, Regular, Challenge
Requires 32K RAM. disk. BASIC. $24.95
Cassette version:
2 levels of play- Beginner, Intermediate
Requires 16K RAM, cassette, BASIC. $19.95
turn WORDRACE into a history game or a famous athletes
game, and get more vocabulary words, with the WORDRACE
accessory disk: CLAIM TO FAME/SPORTS DERBY. 3 new games in
all.
Disk only. Requires WORDRACE disk. $19.95
a Irademarft of Alan, Inc. Full-view 80 is a trademark ol BiT 3 Computer Corpora
o-o> the link between you
and what your Atari is
really thinking:
AeUSE
the insult-exchange program.
Have you cursed out your computer? Now
it can understand you and answer back!
Requires 40K RAM. BASIC, disk. $1 9.95
Release your aggressions! Inflict ABUSE
on anyone who's got it coming!
DON'T ASK
Q-O^ the link between technical excellence
and the fun of computing. Why do we give
you so much? Don't Ask.
DCDfYT ASK
COMPUTER SOFTWARE
2265 Westwood Bl., Ste. B-150
Los Angeles, CA 90064
(213)475-4583 or 397-8811
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 55
TABLE 3
ATARI BULLETIN BOARDS
(Readers should he advised that some phone numbers may have
changed
bet
ween the time of publication and the
readers' access of a particular system.)
AMIS
Cupertino
CA
408-253-5216
New York
NY
212-598-0719
San Jose
CA
408-298-6930
Oklahoma City
OK
405-722-5056
San Jose
CA
408-244-6229
Eugene
OR
503-343-4352
San Jose
CA
408-942-6975
Pittsburgh
PA
412-655-2652
Denver
CO
303-758-6233
CP/M
Miami
FL
305-238-1231
Chicago
IL
312-789-0499
Honolulu
HI
808-833-2616
Baton Rouge
LA
504-273-3116
Chicago
IL
312-789-3610
Boston
MA
617-266-7789
Boston
MA
617-876-4885
Royal Oak
MI
313-759-6569
Detroit
MI
313-589-0996
Oklahoma City
OK
405-848-9329
Grand Rapids
MI
616-241-1971
Allentown
PA
215-398-3937
Sterling H'ghts
MI
313-978-8087
Philadelphia
PA
215-836-5116
Monroe ville
PA
412-372-0616
Hawkins
TX
214-769-3036
Seattle
WA
206-228-9401
TARI-BOARD
Spokane
Madison
WA
WI
509-582-5217
608-251-8538
Denver
Atlanta
CO
GA
303-221-1779
404-252-9438
ARMUDIC
Madison
NJ
201-377-4084
San Francisco
CA
415-527-8276
Mount Holly
NJ
609-267-7825
Washington
DC
202-276-8342
Princeton
NJ
609-924-5875
Silver Spring
MD
301-587-2132
Beechwood Falls
OH
216-582-2792
THE MONKEY WRENCH FOR ATARI
$49.95
(See the many
reviews.)
A BASIC and machine language
'fT^Ms programmers aid for 800 users.
pSiji \ i Plugs into right slot and works
^>WV with ATARI BASIC. Adds 9 new
Vp^j_ direct mode commands in
*" eluding auto line numbering,
delete lines, change margins
memory test, renumber BASIC,
hex/dec conversion, cursor ex
change, and machine language
monitor.
The monitor contains 15 commands used to interact with
the 6502. Some are display memory/registers, disassem-
ble, hunt, compare, hex/dec convert, transfer memory.
Uses screen editing.
MACHINE LANGUAGE MONITOR
FOR ATARI USERS
A must for anyone interested in machine language and
wanting to know more about how the computer works.
Provides 21 easy to use commands. Uses screen editing.
Cassette - $24.95 Diskette - $29.95
TYPING EXERCISE
A great educational program. Consists of typing drills
and timed typing tests. Diskette - $12.95
ATARI AND PET
EPROM PROGRAMMER
Programs 2716 and 2532
EPROMs. Includes hardware
and software. PET = $75.00-
ATARI lincludes sophisticated
machine language monitor) =
$119.95
EPROM BOARD FOR ATARI
The EPROM board plug into the cartridge slots. Uses
2716, 2532, and other EPROMs. May contain up to 8K. A
must for making your own machine language programs.
$19.95
EPROMS - HIGH QUALITY, NOT JUNK
Use with PET, APPLE, ATARI, SYM, AIM, etc. 450 ns. $6.50
for 2716, $12.50 for 2532. We sell EPROM programmers
for PET and ATARI - see above.
5% INCH SOFT
SECTORED DISKETTES
Highest quality. We use them on
our PETs, APPLES, ATARIs, and other
computers.
$22.50/10 or $44.50/20
MAE SOFTWARE DEVELOPMENT SYSTEM
More than just an Assembler/Editor!
It's a
Professionally
Designed
Software
Development
System
MAE
for
PET
APPLE
ATARI
$169.95
Blast off with the software used on the space
shuttle project!
• Designed lo improve Piogrammei Pfodydivity
• Simiiaf synlax and commands --No need lo relearn peculiar
synlaxes and commands when you go from PET lo APPLE
10 ATARI
• CoresidenI Assembler/Editor - No need to load the Editor then tlie
Assembler men tite Editor, etc
• Also includes \Afaid Processor, Relocating Loader, and much
more
• Options EPROM Programmer, unimplemenled opcode circuitry
• STILL NOT CONVINCED Send loi liee spec stieel'
MEMORY TEST
Avoid problems with ATARI RAM cartridges. Don't let
your guarantee run out without a test. Cassette - $6.95,
Disk - $9.95
3239 Linda Dr
Winston-Salem. N.C. 27106
(919)924-2889 (919)748-8446
Send for free catalog!
PAGE 56
A.N.A.L.O.G. COMPUTING
ISSUE 10
ICheChallengt of the Quest
by Brad Griffin
In a remote part of Angola, the fair maiden,
Glanoa, shivers with fear and disgust as the evil
Captain Moonglug approaches. Her skin crawls as the
vile scientist, caressing the silken strands of her hair,
whispers in her ear, "You are mine now. No one can
save you." As the foul stench of his breath causes our
lady to recoil, a gust of fresh air with a hint of
honeysuckle pervades the dark room of her
imprisonment. Could this be an omen of hope? Or is
it something too perverse to imagine? Far away, in
the outer reaches of the desert known as Gala hlo, a
lonely figure wanders aimlessly from dust to dune.
Alan Og, a soldier of fortune, about to give up all
hope of surviving, catches the faint hint of
honeysuckle in the wind. A mystifying force surges
through the sinewy body, as the wanderer feels a
sense of purpose. He knows that the fairest maiden
of all is a captive of the dreaded one, and he, Alan
Og, is her only salvation. He begins the search
anxious to encounter the one known as "pond
scum", the villainous Captain Moonglug.
So begins your adventure into lands unknown,
against never-before-dreamed-of foes. Among the
scores of games in the burgeoning software market,
the computer adventure is a genre of its own. What is
an adventure? How does one play it? Who plays
adventures? Are they all the same? We shall explore
the computer adventure with all of its variations and
review representative simulations from the different
groups.
Deciding what games should be included in the
category of adventure is becoming increasingly
difficult. As programmers search for original ideas
and games to attract the public, combinations of
arcade and adventure games further cloud the issue.
An adventure has been defined as a bold
undertaking, in which hazards are to be met and the
issue hangs upon unforeseen events. Using this
definition as a guideline, we shall explore computer
adventures.
There is stark contrast between the adventure
game and the arcade game. Frequently, this same
contrast exists in people. Arcade addicts with their
lightning quick reflexes and unparalleled persistence
must eventually succumb. They may achieve a higher
score, but the invaders (centipedes, et al) always
prevail, and losing is inevitable. The adventurer
knows there is always hope, and, if one is clever and
possesses dogged determination, The Quest will be
accomplished. It is the possibility, even the
probability, of success, that truly differentiates the
adventure from other simulations. An arcade game is
like shooting basketball; the more one does it, the
better one becomes. A variety of obstacles may
prevent one from reaching perfection or totality.
Distance from the hoop, angle of the shot, fatigue,
and the ever present, "in your face!", all enhance the
game, but deny perfection. An adventure is like
reading a book. The story line exists and the
resolution is sought. The adventure game differs
from the book in that one must be an active
participant instead of an omniscient observer or
reader. There is jeopardy in a computer adventure.
The ever-present risk of being wasted in an
encounter with a monster of low degree always
exists; however, the true peril is faiUng to solve the
puzzle and never achieving the final goal. This is like
reading a mystery and never having the opportunity
to finish the final chapter. The exhilaration of
discovering the clue which finally enables one to get
the key from the ogre by tickling its froboosh is not
found in any other game. The exasperation of being
unable to cross the ravine, beyond which is a buried
treasure, is unmatched. The sense of
accomplishment and pride when success is at hand is
universal. The desire to complete the quest, and the
anxiety in mastering the final obstacle give way to the
feeling that a friend has been lost. Much the same
feeling one has when a book is finished. The only
way to rid oneself of this depression is to begin a new
adventure. Quite a hardy lot these adventurers.
Some of the newer adventures have random features
assuring one of a different adventure with each new
game.
The basic scheme in an adventure is to advance
through a series of mazes to reach a final goal. Each
section of the maze may be depicted as a room, a
forest, or even the inside of a tourbillion? Traveling
from one section to the next may simply require a
command, such as, "GO DOOR." Certain items
may be needed to allow progress. E.g., one must use
the stick to knock the apple from the tree to throw at
the fire-breathing Galumph, who, being terrified of
apples (specifically. Golden Delicious), runs away,
dropping the key to the secret door. Most objects
have a purpose, but not one that is always apparent.
There is usually a limit to the number of items one is
permitted to carry, requiring discrimination in the
load carried. Drawing a map is essential for most
adventures. Dropping objects as one explores the
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 57
maze, ala Hansel und Gretel, avoids traveling in blind
loops, and the search for the way in or out is
simplified.
The basic concept in computer adventure games is
to reach an ultimate goal, whether it be to
accumulate a certain number of *TREASURES*,
rescue the princess, or discover the guilty culprit.
However, adventures are not all the same. The most
fundamental difference is the format of the
adventure. These have been described by others, but
the use of generalized terms has made these
distinctions confusing. The most commonly abused
term is "graphic adventure." Every adventure games
uses graphics to some degree. How does one discern
the difference between a game with a static graphic
display of what the adventurer sees and one with a
scrolling graphic map, where the adventurer is seen
as a figure within the representation? Both are
described in advertisements as graphic adventures.
The following categorization may remove some of
this confusion. There are two basic types of
computer adventure games; the text adventure and
the action adventure.
TEXT ADVENTURES
Here the adventure scenario and progress through
it are conveyed with the written word. There are
three kinds of text adventures. The Pure Text
Adventure uses only written text. Usually, the
adventurer sees through the eyes of a "puppet" and
communicates using two word commands, a noun
and a verb. The surroundings are described in some
detail and the objects in view are listed. Objects are
used by typing specific commands, such as, "TAKE
AXE", or "USE AXE". The program responds with
"OK" if it is an appropriate command, or with "1
DON'T KNOW HOW TO USE AN AXE." At
times, one may feel compelled to "USE AN AXE"
on the computer. The possible routes of exit from
each location are displayed. Movement is
accomplished using directional commands. Most
adventures permit use of abbreviations, so instead of
typing "GO NORTH", using "N" is sufficient.
Other directions are abbreviated as S,E,W,U (up),
and D (down). An inventory (1 or INV) command
displays the objects one possesses at that moment.
Hints to aid the novice may suggest the correct word
to use in a certain situation. Hints may also provide a
classic straight man setup, as Scott Adams
demonstrates when he suggests using the command
"WEIGH ANCHOR". The more advanced
adventure games do not contain hints within the
program itself, although many hint books are
available separately. (The Zork Users Group
superbly complements Infocom's series of
adve,'A«LV!.':^s with maps, blueprints, posters, hint
books, T-sVv\ns, etc.). Scott Adams' Adventures fall
into this category, as ^^o most of the APX adventures.
Infocom's adventures allow the input of full
sentences with multiple commands, successfully
simulating actual conversation.
Slightly different is the Enhanced Text Adventure in
which something extra is added to the basic text
format. This may be done using sound or a
simplified illustrated panel to embellish the overall
effect. LABYRINTHS from R C.A. is an example of
an enhanced text adventure. Commands are selected
from a menu, while sound effects for combat and
changes in the background color for different
locations are used.
The third type is the Illustrated Text Adventure
where every location (room, panel, portion of the
maze) is a picture of what the adventurer would be
seeing. The static graphic display is accompanied by
text in the lower window. Keyboard commands, as
with other text adventurers, are used. If an object is
picked up, or an action taken that would alter the
scene depicted, e.g. cutting down a tree, the pictorial
display is redrawn to show the changes. Although
challenging in their own right, these adventures may
be limited in scope, since an illustrated, and
hopefully recognizable, object must appear on the
screen. WIZARD AND THE PRINCESS, an Sierra-
Online Systems Inc. Hi-Res Adventure, is an
example of an exciting adventure scenario with high
quality graphic illustrations that does not sacrifice
the challenge of pure text adventures.
ACTION ADVENTURES
There are two sub-groups in this category. The
Personified Adventure is a group that is most varied
and difficult to classify. They are often referred to as
graphic adventures, mapped adventures, or role-
playing fantasy adventures. The adventurer is
usually represented by a symbolic human figure
(ergo, personification) which is able to be moved
about the screen from one location to another. As
the edge of the screen is approached, it scrolls to the
adjacent area. Control is through a combination of
keyboard commands and joystick manipulation.
The commands are most often in menu form and are
quite limited. Consequently, the commands are
known to the player and the challenge (or
frustration) of discovering the game's special
vocabulary is missing. Random encounters with
danger highlight the quest, and combat is frequent.
After achieving the final goal, the random nature of
these games allows theni to be played repeatedly.
ALI BABA AND THE FORTY THIEVES by
Quality Software is an example of this type of
adventure.
Arcade Action Adventures are unique in that they
require use of motor skills to facilitate interaction
with the game. Features of the other adventure
formats are incorporated, but quick responses to
invading aliens, etc. are necessary. The display may
be similar to the illustrated text, and animation
added by having foes appear periodically. Unlike
other adventures, the goal may be to attain a high
score, rather than achieve a final success, although
both goals are usually embodied in the arcade
action adventure. The cerebral challenge of
decifering clues and the mental images created by the
text-based adventures are replaced with the reflex
response to the droid which just appeared and
blasting it to Cleveland where it will never be heard
from again. STAR WARRIOR from Automated
Simulations is a personified adventure with arcade
action.
There are adventure players who consider
themselves purists and only play the text adventures.
They are involved in the challenge of the word game
aspects and solving the mystery. The illustrated text
and action adventures provide an enjoyable variety.
There may be major differences between adventures
with the same format. Documentation, game-save
feature, real-time element, completion time, and
originaUty of the scenario are a few areas where these
differences occur.
The only way to find out if you will enjoy
adventure gaming is to try it. For the beginner, Scott
Adams' PIRATE ADVENTURE or Online's
MISSION ASTEROID provides a good
introduction. They are both available in illustrated
text versions (PIRATE ADVENTURE is also
available as pure text and on cassette for less money ).
Both are challenging, but not impossible, and will
give hours of pleasure. If you want greater challenges
after whetting your appetite, a bounty of adventures
await you — many reviewed in this issue. Naming the
best adventures is difficult because of wide variation
in individual preferences. All of Scott Adams'
Adventures are well done and original. WIZARD
AND THE PRINCESS (Online Systems Inc.) was
the first high quality illustrated text adventure
available for the ATARI. This Hi-Res Adventure by
Ken and Roberts Williams is still the standard of
excellence in its field. ALI BABA (Quality Software)
is without peer in the personified adventure arena.
Stuart Smith has created a role-playing fantasy with
many special features that no other adventure of this
type has even remotely approached. ALI BABA's
originality, payability, and use of ATARI'S unique
sound and graphics capabilities are unparalleled.
Though not considered here as a true adventure
game, CRUSH, CRUMBLE, AND CHOMP (Epyx
Simulations) is a role-playing fantasy with the player
starring as one of many available movie monsters
attempting to destroy any of four major world cities.
It is great fun. SNOOPER TROOPS (Spinnaker)
offers an excellent combination of all the above
formats, and though its advertisements seem to be
aimed at children, it is challenging and fun for all
ages.
No article on adventures would be complete
without mentioning the creators of the first
adventure, Don Woods and Willy Crowther. Their
original trek through Colossal Cave has been
recreated by many. A version of this classic
adventure game should be part of every serious
adventurer's collection. Let The Quest begin. D
Fantasy for your ATARI
Alt B^b^
Atit> the fort\i tViicves
By Stuart Smith
A fantasy role-playing adventure for
Atari Personal Computers.
Encounter sultans, thieves, fierce and friendly
creatures as you guide your alter ego. All Baba,
through the thieves mountain den in an
attempt to rescue the beautiful princess.
Treasure, magic, and great danger await you!
One or more human players can guide up to
seventeen friendly characters through the
many rooms, halls, and caves. Some characters
wander around randomly, making each
adventure a little different.
ALI BABA AMD THE FORTY THIEVES is written in
high resolution color graphics and includes
music and sound effects. Adventures can be
saved to disk and resumed at a later time.
Atari 800 32K.
On diskette only — $32.95
FOR OUR COMPLETE LINE OF APPLE AND ATARI SOFTWARE
PLEASE WRITE FOR OUR CATALOG
ASK FOR QUALITY SOFTWARE products at your favorite computer store. If neces-
sary you may order directly from us. MasterCard and Visa cardfiolders may place
orders by calling us at (213) 344-6599. Or mail your clieck or bankcard number to
the address above. California residents add 6% sales tax. Shrpprng Charges.' Within
North America Qcdets must include $1.50 for shipping anb'naniVmg.Oulside North
America the charge for airmail shipping and handling is $5.00. Pay in U.S. currency
QUTiLrry
SOFTW7IR6
6660 f?eseclo Blvd.. Suite 105, f?eseda, CA 91335 (213) 344-6599
COMPANY/GAME
FORMAT
REQUIREMENTS
SKILL LEVEL
GAME
SAVE
INTER-
FACE
EXTRA
FEATURES
ADVENTURE [NTERNATIONAL
Adventures 1-12
Text
24K/Cass,32K/Disk
Novice'=>Advanced
Yes
K
S.A.G.A. 1-?
Illustrated Text
48K/Disk
NoviceOAdvanced
Yes/Ml
ultiple
K
2,3
Curse of Crowley Manor
Text
16K/Cass
Advanced
Yes
K
Escape from Traam
Text
16K/Cass
Advanced
Yes
K
ATARI PROGRAM EXCHANGE
Alien Egg
Text
24K/Disk (BASIC)
Novice
No
K
Castle
Text
24K/Disk (BASIC)
Novice
No
K
Chinese Puzzle
Text
24K/Disk (BASIC)
Intermediate
No
K
Galafiad and tfie Holy Grail
Personified
32K/Disk
Novice
No
J
Sleazy Adventure
Text
32K/Disk (BASIC)
Intermediate
No
K
Sultan's Palace
Text
32K/Disk (BASIC)
Novice
No
K
R-Rated
Wizard's Gold
Text
24K/Disk (BASIC)
Novice
No
K
Wizard's Revenge
Text+
24K/Disk (BASIC)
Intermediate
No
K
AUTOMATED SIMULATIONS
Crush, Crumble & Chomp
Person/Arcade
32K/Cass/Disk
Novice
No
K
1
Crypt of the Undead
Personified
40K/Disk
Novice
No
J
Curse of Ra
Personified
32K/T/D
Intermediate
No
K
Temple of Apshai
Personified
32K/T/D
Intermediate
No
K
Datestones of Ryn
Person/Arcade
32K/Cass,32K/Disk
Novice
No
JK
1
Dragon's Eye
Personified
40K/Disk
Novice
Yes
J
Escape-Vulcan Isle
Personified
40K/D
Novice
No
J
King Arthur's Heir
Personified
40K/D
Novice
No
J
Rescue at Rigel
Personified
32K/T/D
Novice
No
K
Star Warrior
Person/Arcade
32K/Cass/Disk
Novice
No
K
1
AVALON HILL
Empire of Overmind
Text
40K/T/D
Advanced
Yes
K
Lords of Karma
Text
40K/T/D
Novice
Yes
K
DATASOFT
Sands of Egypt
Illustrated Text
16K/Disk
Intermediate
Yes/Ml
iltiple
K
Animated
INFOCOM
Deadline
Text
32K/Disk
Intermediate
Yes/ Ml
iltiple
K
1,2
Starcross
Text
32K/Disk
Intermediate
Yes/Multiple
K
1,2
Zork 1, II, & III
Text
32K/Disk
Intermediate
Yes/ Ml
iltiple
K
1,2
JV SOFTWARE
Action Quest
Arcade
16K/T/D
Novice
No
JK
Ghost Encounters
Arcade
16K/T/D
Novice
No
JK
ON-LINE SYSTEMS
t^ission: Asteroid
Illustrated Text
40K/Disk
Novice
Yes/ML
iltiple
K
Softporn Adventure
Text+
40K/Disk
Novice
Yes
K
R-Rated
Ultima 1 & II
lllustratedText
48K/Disk
Intermediate
Yes/ML
iltiple
K
Ulysses and the Golden Fleece
Illustrated Text
40K/Disk
Intermediate
Yes/ML
iltiple
K
Wizard and Princess
Illustrated Text
40K/Disk
Intermediate
Yes/ML
iltiple
K
P.C.A.
Labyrinths Text+
QUALITY SOFTWARE
AM Saba and the 40 Thieves
SPINNAKER SOFTWARE
Snooper Troops #1
Snooper Troops #2
SYNERGISTIC SOFTWARE
Probe 1 — Transmitter
Warlock's Revenge
32K/T/D (BASIC) Novice
No
Personified
32K/Disk
Novice
Yes/Multiple
K/J
1,4
Mixed
40K/D
Novice
Yes/Multiple
K
Educational
Mixed
40K/D
Novice
Yes/Multiple
K
Educational
IE
Arcade
40K/Disk
Novice
7
JK/PK
1
Illustrated Text
40K/D
Novice
Yes
K
LEGEND
FORMAT
SKILL LEVEL
\NTERFACE
— Text = Pure Text; Text+ = Enhanced Text; Illustrated = Static Graphics; Person = Personified Graphic or Mapped;
Arcade = Mobile Enemy, Motor Skills needed; Mixed = Unique Combination, animated/personified, motor skills.
— Level of expertise or experience needed to successfully interact or complete adventure.
— K = Keyboard alone; J = Joystick; JK = Joystick and Keyboard used together; K/J = Either utilized
EXTflA FEATURES— "^\ ^.-atv^iom variations; 2) Printer output; 3) Voice synthesizer; 4) Two or more players possible.
>i\
EDUCATIONAL SOFTWARE
PROUDLY PRESENTS
TRICKY TUTORIALS™ 8 Thru 1 1
FOR ATARI® COMPUTERS
m - Create and animate your
own character sets using the
same methods used in many of
your favorite games. Includes a
great editor, utilities, examples,
and a complete Space Invaders
look-alike, all explained in detail.
GTlA
GRAPHICS
16K TAPE OR 32K DISK ONLY $29.95 EACH!
1(9 - Learn to use Graphics
modes 9, 10 & 11 giving you 16
shades or 9 colors, all from
BASIC. Create programs never
before possible such as three
dimentional shapes and digitized
pictures, all explained in great
detail.
#^0 - Find that perfect sound ef-
fect for your games and pro-
grams. Includes over 50 effects
ready to use and explains how
they were written. Special
utilities are included to allow you
to develop your own sound
effects.
#1 1 - Our famous Memory Map
now COMES ALIVE in this
TUTORIAL. Included are thirty of
the most useful POKE locations
within the ATARI, each fully ex-
plained with interactive ex-
amples. See the tricks you have
always heard about.
PROGRAM
EXCHANGE
EDUCATIONAL SOFTWARE inc.
OUR NEW PROGRAM EXCHANGE
FEATURING THE FINEST PROGRAMS
FROM AUTHORS AROUND THE WORLD:
THE ESI PROGRAM EXCHANGE OFFERS A $24.95 WORD PROCESSOR (TAPE OR DISK), A $19.95 GRAPHICS TOOL THAT USES
SINGLE WORD COMMANDS, A FAMOUS CHARACTER EDITOR FOR ONLY $19.95, A DATABLE PROGRAM |$24 95) WAT ACTUALLY
DIALS YOUR PHONE AS WELL AS KEEP YOUR RECORDS AND OVER 20 MORE'
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 61
EPSON
X
PRINTING MODES
SIMPLIFIED
'''^''fi'immmmm.
by Thomas M. Krischan
Tired of coding all those CHR$(xx) statements to
generate an EPSON printing mode? The User's
Manual uses the Model I TRS-80 as its teaching sys-
tem. Consequently, ATARI computer owners find ,
that many of the well documented examples don't
work. At first glance, the EPSON printing modes
seem strangely and lengthily encoded. For illustra-
tion, say we wish to print a line of double strike
compressed expanded mode. We would have to type
in this:
I.PRItJT CHRS{27); CHRSC71}; CHRSf27J; C
HRSC70]; "text"; CHRSC27J; CHR$C72); C
HR5<27J;CHRS<69)
That accounts for 72 keystrokes dedicated for
control codes. Half to enable the mode and half to
disable it back. Rejoice, there is a simpler way.
GRAFTRAX-80 and the ATARI computer are a
great combination.
CHR$(27) is an escape code CHR$(69),
CHR$(70), CHR$(71), and CHR(72) set printing
modes. Each of these express a single ASCII value
which just so happens to also represent a single
printable screen character. Try typing this:
? CHRSt27Jj CHRSt27>; CHRSt6<J>; CHRSC7
«IJ ; CHHSC71J; CMRSC72)
Aha! %EFGH. Note that \ corresponds to the
ESC key and that only one h. is printed. The first \
is used by the computer, but that's another story.
Back to the printing modes. Try typing this little
gem:
LPHIHT "tGtHtexttH^F"
(Remember to use the ESC key twice for each \
symbol).
Hey, that's the same print mode as our first illus-
tration. And this uses only 8 keystrokes for control
codes, or 12 if you're a purist and consider double
presses. In either case it's much less than 72.
Before you go racing off to your printers, let's
explore more about character codes. There are only
5 true character control codes (Table 1).
TABLE 1.
ON
CODE
OFF
CODE
FIJHCTTOM
E
G
P
R
4
F
H
Q
5
5
Enphasized
Double Strike
COMipressed
Expanded
Italic?;
We must include the necessary preceeding escape
code before each of these. By specifying all possible
combinations we obtain 32 character modes
(2**5 = 32). These are displayed in Table 2. Note
that only 24 character modes are unique. The Em-
phasized code (E) nullifies the Compress code (P).
The first line in Table 2 was generated by:
LPRIMT "%F%HtOt5t50ee88FHQS5"
. . .where "^FtH'iO^'itB" are the necessary control
codes and "OeoeOFHOtiS" is the printed text.
By the way, if you use escape codes in a program it
becomes non-listable on the printer, but will list to
the screen.
PAGE 62
A.N.A.L.O.G. COMPUTING
ISSUE 10
TABLE 2
.-!' .■)' :)'" .'■' ■!'" '.'.' -■:■■ '.}' ;;i' :''- - .■['-■J'' S'' ■!' '■■-.." .:i::jy.'
O0 10 0FHPS5
00 JO J F MPS 4
001iOFHPS5
MIUffiPM
<:> 1, XI J O C> i"-"" illrii Q :E3 ":;;::»
•i;:> .2'' <:> <:> -if /■- ■ .& .g? sr •■*!'
01010FBQR5
<:>;'<:>,/i'.//-77.';^/(?¥
01 100FePS5
0JI0JFePS4
01110FGPR5
OmiFSPM
1 c_>c_Jt_>c_>E:HQS;!£i
^<>oo^^//os--^
10O1OEHQR5
iC>Oi'i£//«.fl^
1. C* 1 €!>€!> EEHR-S;^
^ O ^ o .z ^ /y /=*s- -^
lOliOEHPRS
iC>i2/£.VP,^#
1 iOOOEOQSS
J ^OOJE ^GGtS-^
llOlOEeORS
-^yo/ifsa/j-^
± 1 lOOEGF^SS
JJEJO^EIGPS^
11110E6PR5
11211E&PR4
Now we will explore spacing codes. If you have
tried the underlining example in the EPSON User's
Manual you found that it doesn't space correctly
with the ATARI computer. Try typing in this
example:
le LPRINT "tA-iUNDERLINE"
28 LPRIMT " \e\"
3e LPRINT "IS FftKEDI^fl'"
40 LPRINT "NORHAL LINE."
and RUN
mam j=esc esc
•=CTRL L
1=CTRL E \=CTRL G
Let's explain how it works. Standard (i.e. default)
spacing consists of 12 vertical dots or 1/6 inch.
Upper case letters use the top seven dots (dots 1-7),
leaving the bottom five dots blank (dots 8-12).
Vertical line spacing can be changed using an ecA
control code. The number following the control
code signifies the number of vertical dots in a line,
from 1 to 85. The ATARI keystroke which corres-
ponds to 1 is "Ctrl A", 2 is "ctrl B", etc. In our
illustration we do not specify a type of vertical line
spacing. The default is twelve vertical dots. The top
of our line is dot #1 and the base of our line is dot
#12. Statement (10) activates the top seven pins in
our printer head and we print "UNDERLINE" on
dots #1 through #7. We then change our line spacing
to a five dot vertical line. In statement (20) we skip to
the next printer line. Our top is now dot #6 and base
is dot #17. We activate pin number four and print
several dashes. Pin number four is located on dot #9.
We again readjust our line spacing to a seven dot
vertical line. Then, in statement (30) we skip another
printer Une. Our top is now dot #13 and base is dot
#24. We are positioned on a standard spacing base
line (i.e. 24 is divisible by 12). We then print "IS
FAKED!" and reset the vertical spacing to a standard
12 dot line. Statement (40) shows us that we're back
to normal.
Table 3. illustrates the five spacing codes.
OTARI
CODE
io~ "
\2
(3 n
hH n
TABLE 3
DESCRIPTION
Sets 9 dot vertical line
Sets 7 dot vertical line
Sets 12 dot vertical line
Sets n/3 dot vertical line
Sets n dot vertical line
Why are there so many spacing codes? Well, the
first three are intended as quick and easy spacing for
normal text printing. The last two codes concern
more specialized text printing, like underlining and
graphics.
Unfortunately, once you activate any of these
spacing codes, except ec2, the printer forgets where
the top of the form is. The form feed counts the
number of whole lines, not dots. You could readjust
for this by manipulating with fewer or greater dots in
successive print statements.
For example, in our illustration we use four
LPRINT statements. But, it appears that we've only
printed three lines. One of our LPRINT's is the
underline. We are actually one whole hne, 12 dots,
behind the form feed counter. To catch up we simply
add one 24 dot line, hke this:
58 LPRINT ■•%«■*" CA=CTRL XJ
With this information in hand, EPSON printer
users can write programs with much more efficient
operation, not to mention the savings on keystrokes
when entering programs. D
NEW FOR A TARI from mmg micro software
NOW — THE TWO MOST POWERFUL AIDS FOR ATARI BASIC!!
\ A
BASIC COMMANDER
Single key entry file commands
- ENTER "D: - SAVE "D:
- UST"D: - RUN "D:
- LOAD "D:
Single Key DOS functions from BASIC
- FORMAT a disk - LOCK a file
- RENAME a file - UNLOCK a file
- DELETE a file - DISK DIRECTORY
THREE PROGRAMMABLE KEYS!!
- sinqle keys programmed for your own use, even
whole subroutines
AUTONUMBER
- automatically generates line numbers for you —
speeds program entry 25-75"i.
BLOCK DELETE
- deletes any range of lines instantaneously!
RENUMBER
- renumbers lines and all references
- extensive error trapping
- 3 seconds to renumber 500 lines
MMG BASIC DEBUGGER
TRACE through your Basic program
— Single step — TRACE while
— TRACE UNTIL - change variables
— LIST line numbers executed
— examine variables' values
Full screen BASIC editing
— scroll up or down by cursor
— edit your whole program easily
— no more LIST line number ranges
Split screen mode
— view two parts of your BASIC program at once,
and edit both!
— scroll each window independently
CROSS REFERENCE
— provides a list of variables and the line numbers
in which they are used in your program
SEARCH FOR PHRASE
— search your BASIC program for any phrase,
command or string of characters; let your
computer do the searching for you!
EACH PRODUCT ALONE REQUIRES 16K, AND IS AVAILABLE ON DISK FOR ONLY $34.95
Now, the convenience of both powerful utilities together in your Atari at once
The Combined Basic Commander and MMG Basic Debugger requires 24K. $74.95
ADDITIONAL PRODUCTS
NECESSITIES
RAM TEST II ■ The fastest and most thorough memory test available for the
ATARI has now been further improved! Tests not only all locations, but also tests
the memory addressing system. This all machine language program takes 4
minutes to test 48K. It's the only program that tests the cartridge area of RAM.
Good for new 400/800 computer owners, for testing new RAIVI boards and for use
in computer stores to test and pinpoint bad memory locations. Bad memory
locations are pinpointed so repair is as simple as replacing a chip!
Requires 8K, Disk or Cassette $29.95
DISK COMMANDER II - Just save this program on your BASIC disks and it will
autoboat and automatically list all programs for the disk into your screen. Simply
run any program by'.typing a single number.
Requires 16K, Disk Only $29.95
TUTORIALS
ASTEROID MINERS - This 50 page book and program provides for a unique
intermediate to advanced tutorial. A 32K BASIC game utilizing over 25 players in
player-missle graphics, machine language subroutines, a redefined character set,
multiprocessing utilizing the vertical blank interrupt interval, and much more!
The 50 page book included with the program documents each pari of the entire
program and contains the fully documented source code for both the BASIC and
assembly language parts of the program. Use these routines in your own
programs. These examples make it easy!
Requires 32K, Disk or Cassette $34.95
GAMES
CHOMPER An all machine language arcade style game with intelligent
monsters. Requires 16K Ram, 1 Joystick and nerves of steel.
Available on Disk or Cassette $29.95
BUSINESS/HOME
MAILING LIST - Extremely fast BASIC and machine language program. Each
data disk holds over 500 files. Sort on any of 6 fields at machine langugage speed
or search on any fragment of a field! Use any size labels or envelopes.
Require 40K, Disk Only $39.95
NEW
MMG DATA MANAGER - If you frequently find yourself looking for
something, only to find it eventually right under your nose, then MMG DATA
MANAGER is for you. Organize virtually anything into a computer-searchable
format, and let your ATARI do the hunting for you. MMG DATA MANAGER is
the first of a series of business applications from MMG MICRO SOFTWARE, all
of which will share the ability to access files created by any of them. This flexible
database manager will allow many fields, with machine language sorting, on any
field. In addition, you have total control of the structure of your data, allowing you
to design a database which you feel most comfortable. A special feature of MMG
DATA MANAGER is its ability to select for a given value of any single field, or any
combination of values from many fields. You could, for instance, determine who
lived in Las Vegas, Nevada, and bought item #3145 from you, and whose last
name began wilh SM, and whose telephone number began with (702) 873-4. You'll
never lose track of information again! Multiple print options add to the versatility
of MMG DATA MANAGER.
Requires 40K, Disk Only $49.95
Available At Your Favorite Computer Store
OR Send a Check or Money Order to:
MMG MICRO SOFTWARE
P.O. Box 131 • Marlboro, NJ 07746
OR CALL
(201) 431-3472
For MasterCard, Visa or COD Deliveries
(Please Add $3.00 For Postage & Handling)
NJ RESIDENTS ADD 5% FOR SALES TAX
ATARI is a registered trademark of ATARL Inc.
PAGE 64
A.N.A.L.O.G. COMPUTING
ISSUE 10
A MASTER FILE DIRECTORY USING DMS
16K disk
by Marshall D. Abrams
Introduction
There are several good programs for creating and
maintaining a master composite directory of all one's
disk files. So why did I write another one? The
answer is time and convenience. In all the existing
programs which I tried, I found that the effort re-
quired was trivial when the number of files was small
and very time consuming when the number of files
grew above a few hundred. I found that I didn't need
a master file directory (MFD) when I had only a few
disks, but when I got to over 40 sides, I started hav-
ing trouble finding files. I had even more trouble
keeping track (no pun intended) of multiple copies
made for backup. When I modified the working
copy of a file, I wanted to also change the backup if I
could find it!
This article describes a program, MAKEDIR,
which creates and updates such a master directory.
MAKEDIR gets you off to a fast start in creating a
MFD. It also lets you update the MFD when you
change which files are on which disk. The MFD is
compatible with the Data Management System
(DMS) which appeared in COMPUTE! November
1981 and the improved ATARI Program Exchange
(APX-20059) version. As described below, DMS
may be used to sort, edit, and print the MFD.
Design criteria
MAKEDIR was designed to interface with DMS.
It creates and edits a file named MASTRDIR.DB
which is completely compatible with DMS. MASTR
DIR.DB is also designed for listing on the TV screen
and 40-column printers. Accordingly, the total col-
umn count is restricted to 38. Fields are defined with
an extra column so that they are separated and
readable when directly copied to the screen or
printer. If this feature is not important to you, but
the limit of five columns to identify a file type is too
confining, you may easily change the field widths.
Getting Started
Run DMS and create the database file MASTRDIR.
The extension .DB will be automatically added by
DMS. The following fields should be created:
Name Width Editing
1 FILE.EXT 13 none
2 Sec 4 numeric
3 Disk 7 none
4 Date 7 numeric
5 Type 5 none
Several people who have gone through these steps
have had the same problem with DMS. DMS is in-
consistent in its inputs. Sometimes it wants you to
type RETURN; at other times it does not. If you type
RETURN when DMS doesn't want it, it doesn't read
it when you type it. It reads the RETURN for the
next command! Horrors! You have gone through
much work to set up MASTRDIR, but it gets thrown
away because there was a RETURN laying around
waiting to be read when you wanted to type Y. Be
sure to type a capital Y; lower case won't work. This
is an easy mistake to make if you have been entering
titles in mixed case.
Running MAKEDIR
The program MAKEDIR will read the directories
of your disks and create the file MASTRDIR.DB.
First, you will be asked for the date in YYMMDD
format. No doubt this format looks strange, but
there is a good reason for it. This format will sort
correctly when treated as a character string, which is
the way that DMS's sort works. It would also work if
the format were YY-MM-DD, which is more read-
able but takes more columns. To be more general,
the format should be YYYYMMDD, but YY will
correctly sort this century.
MAKEDIR will attempt to read the disk id (see
below for disk id format); if it fails, it will ask you to
type in "diskid". The program assumes that all files
on each disk are of the same type, or purpose, and
asks you for this information. If you have organized
your disks this way, with games on one disk and util-
ities on another, MAKEDIR will save you lots of
time. If a few files are of a different type, you can use
DMS to change their types. Common types are
GAME, GRAPH, WORDP, and UTIL. MAKEDIR
will ask you to load new disks as necessary. When
creating a new MASTRDIR, MAKEDIR fills up all
of available memory before requesting that you load
the disk onto which it will write MASTRDIR.DB.
Generally you will be able to catalog all your disks
before this.
Recataloging a disk
If you have made many additions or deletions to
the files on a disk you may want to recatalog that disk
using the Update command in MAKEDIR. After
reading your disk, MAKEDIR will search MASTR
DIR for all entries previously made for that disk and
mark them as deleted. It will then append the new
entries.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 65
Adding non-directory files using DMS
Many boot disks do not have directories. Some
way is needed to make MFD entries for such disks. In
addition, you may wish to make an entry for an
AUTORUN.SYS that identifies the content of the
file (GAMENAME.ATO, for example). One way to
do this is with the DMS update command. If you run
DMS and select the update option, you will be
prompted into creating as many entries as you like.
The editing tests will even prevent you from enter-
ing alphas in numeric fields.
Editing MASTRDIR
Since MASTRDIR. DB is a text file, it can be
edited with a text editor, such as the Program-Text
Editor (APX-20075). Using an editor is often more
convenient than DMS for a small change. Similarly,
searching MASTRDIR. DB for a specific file may be
done with the editor's search command. An alter-
native way to add records to MASTRDIR. DB is to
use an editor. In general, an editor will let you see a
screenful of records, so it will be easy to create new
records by lining up the fields above and below.
Further, an editor lets you insert the new record any-
where you want. For a few additions it is probably
more convenient to insert that in the right place in a
sorted list rather than have to resort after insertion.
Disk Name
MAKEDIR assumes that a file DISKNAME.TXT
exists containing a single record in the format
( . . .tide. . . diskid).
Diskid may be any string, preceded by at least one
blank and followed by a greater-than character. If
MAKEDIR discovers that DISKNAME.TXT does
not exist, if offers to write it for you. So even if you
hadn't previously numbered your disks, you can
number them at the same time that you catalog them.
Since MAKEDIR is written in BASIC, it may easily
be changed to work with other disk identifiers.
Other Features
MASTRDIR. DB records occupy 38 columns,
making it very convenient to list them to the screen
or a 40-column printer. From DOS, type C (for
copy). Then specify
MASTRDIR.DB,E:
to have the MFD scroll on the screen. Typing CTRL
+ 1 will stop and restart the scrolling at will. To print
the MFD, type
MASTRDIR.DB,P:
To avoid multiple entries which would convey
little information, MAKEDIR excludes files with ex-
tension .SYS and MINIDOS. However, since each
AUTORUN.SYS may have a different purpose, I
manually enter progname.ATO (where progname is
the name/purpose of the AUTORUN) in the
directory.
Program description
Lines 10 to 90 set up the program variables and
color the screen. I like to have a unique color iden-
tifying each program or program type. Lines 100 to
120 get the date. Lines 200 to 460 constitute the
main menu. The disk type is input in lines 540 to
588, with all 5 characters padded with blanks as
necessary. If you want to allow more characters for
type identification, change the count here as well as
the DIM on line 30. The disk name is read and
padded in lines 600 to 720. If one doesn't exist, lines
800 to 860 allow you to identify the disk and to
optionally write the DISKNAME.TXT file. Line 890
pads the diskid to 6 characters if necessary.
The disk directory is read in lines 900 to 1020 and
written to the internal buffer, the record being ter-
minated with an asterisk and an EOL. If the buffer is
full, line 1060 sends us off to 1500 to empty it. If we
are updating MASTRDIR by recataloging a disk,
lines 1040 and 1100 to 1420 mark the previous
entries for this disk for deletion by changing the
asterisk to a D. The entire buffer contents are
appended to MASTRDIR.DB in lines 1520 to 1580.
If you ~have two disk drives, this section could be
easily changed to eliminate diskette changing.
Error checking is handled in lines 1560 to 1580,
calling on a subroutine at 2200 to 2280. The menu at
1600 to 1800 allows another copy of MASTRDIR to
be written, another disk to be read, or program
termination. D
18 CLR :0FF=44444:0PEH ttS^ 4, 8, "K ; "
28 COLOR l:5ETC0L0R 2,0,8
39 DIM TMP$tlJ ,DISKII>5(63,FULHftHSt29) ,
FHfiMS (20> , TYPS (5} , REC5 (38) , DSKNflMJ (125
) ,D0iTES(6I
4© FULHflMS="Dl:"'
50 5I2=FRE(I3-50:DIM BUFS (5IZJ
70 GRAPHICS 18:P0SITIOM 4p3:PRINT tt6 ; "
88 POSITIOM 1,5: PRINT tt6j"[a
[JEB": POSITION 6j7:PRINT tt6j"U 628":F0R
1=1 TO 488 .NEXT I
98 GRAPHICS 0:COLOR llSETCOLOR 2,8,8
188 PRINT : PRINT : PRINT "Enter date as
YVMMDD ";:INPIJT DOTES
128 IF LEN(DiftTES><>6 THEN 188
288 PRINT ■'« Main Menu";^
3 to read
Tj to upda
1 to writ
a new disk"
ate this disk's ■'
e directory to dis
IPRINT "fl";:GET tt3,TMP:PRINT
248 PRINT "O
288 PRINT '
348 PRINT '
k."
388 PRINT
CHRSdMPJ
488 IF TMP=82 THEN UPDflTE=8 : GOTO 548
420 IF TMP=87 THEN 1588
448 IF TMP=85 THEN llPDftTE=l : GOTO 548
468 GOTO 288
548 PRINT :PRINT "Enter 5 letter code
identifying type":PRlNT "of files on t
his disk "; :INPUT TYP5
588 L::LEN(TVPS) :IF L<5 THEN FBR I=L+1
TO 5:TYP5(I,IJ=" ":NEXT I
599 REM Get disk id
688 TRAP 8e8:FULNflMSt4J="l>ISKNflME.TKT"
628 CLOSE «2:0PEH «2 , 4 , 0, FULNflM5 : INPUT
tt2jll>5KNflMS: CLOSE tt2
648 FOR I=LEN(DSKNfiMS) TO 1 STEP -1:IF
D5KN0M$(I,IJ=">" THEN POP IGOTO 668
660 NEKT I:GOTO 888
688 K = I-l:FOR I = K TO K-6 STEP -1:IF l>5
KNiaMS(I,I)=" " THEN POP :GOTO 728
788 NEKT I:GOTO 888
728 TRAP 80e:J=I+l:DISKIDS=0SKN0M5(J,K
PAGE 66
A.N.A.L.O.G. COMPUTING
ISSUE 10
) :TRftP OFF: GOTO 890
733 REM No file DISKNftME . TKT-
808 ERR=PEEKtl95) :IF ERROlTfl THEM 228
818 TRftP 808 SPRINT " DISK ID";: INPUT D
ISKU>S:THflP OFF
828 PRINT "Do you want to write DI5KNA
ME. TXT on this diSk-J :INPUT TMPSlIF LE
NtTMP5)=8 THEN 898
830 IF TMP$<>"Y" THEN 898
840 PRINT "Text to identify disk":INPU
T DSKNAM$ : FULNAN$ f 4J ="DI5KNftME . TXT" ; CL
Q5E tt2:0PEN tt2,8,0,FULNaM$
868 PRINT tt2j"<";D5KNflMSj" "JDI5KIDS;"
>•■: CLOSE tt2
888 REM Make sure that DISKID is exact
ly 6 characters
898 L=LENtDI5KIDS) :IF L<6 THEM FOR I=L
+1 TO 6:DISKIDS(I,I)=" ":NEXT I
899 REM Read disk directory
988 FULNflMS(4)="«.*":CL05E ttl:OPEN 111,
6,0,FULNAMS
928 INPUT ttl;FNaM$:IF LEN tFNflMSJ <17 TH
EN 1840
938 REM Don't catalog coHMon nanes
948 IF FNftMS{ll,133="5YS" OR FN0M5C3,1
OJ="DISKNAME" OR FNAM5 t3, 9) ="MINID05"
THEN 928
945 IF FNftM5C3,18J="ftUT0RUN" OR FHAM$ {
3,183="DI5KNflME" THEN 920
968 BUF$CLENtBUF$)41}=FNAM$(3,18} :BUFS
CLEN f BUFS J +13 =" . " ; BUFS tLEH CBUFSJ +13 =FN
ftMSCll,17J
988 BUF${LEN«BUFSJ+1)=" " :BUFS CLEN tBUF
S3+13rDI5KIDS
1888 BUFSfLEHCBUF5j+13=" '• : BUF$ (LEN (BU
F$3 +13 rDflTES CI, 63 : BUFS CLEN CBUFS3 +13 ="
11
1820 BUFSCLENtBUFS}+13=TVPSC1.53 :BUF5(
LEN f BUF$3 +13 -'•*•' ; BUFS CLEM CBUFS3 +13 -CHR
SC1553 :G0T0 928
1840 IF UPDftTE-1 THEN 1180
1860 IF LEMCBUFS3>0,8»5IZ THEM 1588
1080 GOTO 200
1100 PRINT "i^Load disk containing file
"iPRINT "MftSTRDlR.DBj then pressHiHE
H": INPUT IMPS
1110 REM Update Mode to Mark deletions
1128 TRAP 1400:CL0SE tt4:0PEN tt4,12,0,"
D : MftSTRDIR . DB" : F0UND=0
1140 NOTE a4,SEC,BYTE:IHPUT tt4;REC5:IF
RECSC18.2330DI5KIDS THEN 1140
1168 RECSC37,373="D":F0UND=F0UND+1
1180 POINT tt4,5EC,BVTE:PRINT «4;HEC$:G
OTO 1148
1480 GOSUB 2208.-0N ERR GOTO 1120,1188,
1420:GOTO 2260
1420 PRINT :PRINT FOUND:" old entries
found for disk ";DI5KIDS : GOTO 1528
1500 PRINT :PRIHT "Load disk containin
g f ile" : PRINT "MA5TRDTR .DBj then press
aiiniCl": INPUT TMP5
1518 REM Append new catalog
1520 TRAP 1568:CL05E tt4:0PEH tt4,9,8,"D
:MA5TRDIR.DB":TRAP OFF
1548 PRIMT tl4 ; BUFS; : CLOSE tt4:HI0 35,tt4
,B,8,"D:MASTRDIR.DB":CL05E t1:4:G0T0 168
8
1560 GOSUB 2288: ON ERR GOTO 1520,1508,
1580;GOTO 2260
1580 PRINT "Unexpected EOF on update":
END
1600 PRINT "MASTRDIR.DB written" :PRIHT
1610 REM What next?
1620 PRINT "13 write another copy":PRlN
T "d end prograM": PRINT "(3 read anothe
r disk"
1780 PRINT :PRIHT "fl";:GET tt3,TMP
1720 IF TMP=82 THEN BUFS="":G0T0 540
1748 IF TMP=65 THEN 1588
1780 IF TMPr69 THEN END
1888 GOTO 1680
2200 ERR=PEEKC1953
2220 IF ERR:=170 THEM ERR=2:RETURN
2240 IF ERR=167 THEM PRINT "Unlocking
MASTRDIR . DB" : XIO 36 ,»4 , 8 , 8 , "D : MASTRDIR
.DB":ERR=l:RETURN
2260 IF ERR=136 THEN ERR=3: RETURN
2280 PRINT "Error ";ERR;" at line ";PE
EK C186> +256*PEEK C187)
(see D:CHECK 2, p. 26)
18 DATA 276,583,954,342,18,967,226,915
,932,527,42,178,983,915,625,8483
400 DATA 798,825,817,709,142,715,591,9
57,581,25,866,689,850,581,105,9251
see DATA 951,983,51,229,567,168,481,47
9,705,61,647,192,282,794,799,7229
988 DATA 282, 734, 793, 187, 143, S7J, 494, 8
90,469,523,438,185,361,894,267,7293
1510 DATA 720,699,353,406,944,32,578,9
45,798,557,16,146,726,489,718,8839
2248 DATA 786,719,637,2142
ATARI PROGRAMS
FOR CASSETTE BASED SYSTEMS
DEPROGRAM $49.95
Duplicate Any Program Tape In Any Format
(Saves Your Valuable Machine
Language Programs)
Provides the ability to recover
data from damaged cassettes
Automatic Memory Size Adjustment
Boot Program
SCREWDRIVER 400 $39.95
Delete Line Numbers Hex Conversion
Renumbers Decimal Conversion
Memory Analysis Binary Conversion
Change Margins (Runs Thru Basic)
Machine Language To Data Statement
6502 ASSEMBLER $24.95
A 6K Basic Program That Translates
Assembly Language Mnemonics Into
Binary Code
Great For Writing Machine Language
Programs
Interprets Machine Language Code And
Converts To Mnemonic Format
IS
INTERFACE SYSTEMS. . .
1650 WASHINGTON AVENUE
CHARLOTTE NC 28216
704-334-8155
INCLUDE $1.50 FOR POSTAGE
NC RESIDENTS ADD 4% SALES TAX
ATARI, 400 ARE TRADEMARKS OF ATARI, INC.
DATA PERFECT
FOR THE ATARI 400 AND 800 COMPUTERS
YOU MAKE THE COMPARISON
D.P.
GENERAL INFORMATION
Cost of Program
Cost of Utilities Program
llncluded In Program!
Cost of Reports Program
(IncMeii In Progrsmj
Compatible With Letter Perfect |tm|
Word Processing
Menu Driuan
IVery User Friendlyl
Complete Documentation
(Manual Tabbed And Indexed!
Single Load Program
jNo Smpping Of Pwgmm DIskemi
Machine Language
lExtremely Fast Operation!
Can Use Single Disk Drive
Can Us Multiple Disk Drives
Ability To Design Scraon Mask
lUser 0»signs Arrangement Of Data)
Full Keyboard Editing Available
IDeleteltnsen A Character; So To End/Beg.
of line: Fine X TAB, ETC.!
Compatible With Bit 3 BO-Column Board
140-Column anil 80-Column Version Availablel
Works With Any Parallel Printer
ISupports Atari 850 Interface!
Totals Of Nomaric Field
/flfitom Total And Average Value/Fleldl
Fail Sales Provided For Data Protection
Error Messages Displayed
Status Lines For Ease of Use
(Options Always Available For Beferencel
SEARCHES AND EDITING
Multiple Searches Allowed On Same Record
ISearelt On 9 Criteria Per Record)
Search On Two Criteria In Same Field
lUp To 4 Fields In Single Record!
Wild Card Searches
I And/Or, Include, Cliaracter, Or Blockl
Search On Basis Of Record Number
ISeerch For An Individual Record!
Search On Range Of Date Desired --ma^mmmmamiii:.
IDates, Numbers, Values, Greater Or Loss Tttan, Eriual To, etc.!
Ediung 01 Records Individually
Editing Records Globally
IVerification Allowed)
Delete Records Individually
IVerification Allowed!
Qeleiing Records Globally
IVerification Aflowed)
$99.95
soo.oo
$00.00
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
UTILITIES SECTION
Add RbWs To Existing Data Base
Delete Fields From Existing Data Base
Reformat A Data Base
ffiO/OC Format Of Existing Data Base)
Make Additional Copies Of Data Base
ICreate Data Base For Extended Records!
Son on Multiple Criteria
fSort On Basis Of 4 Fields fn A Sort!
Sorts On Multiple Criteria
lAssending Or Descending!
Depth 01 Sort Can Be Changed
IDesignate fJumbsr Of Charters OmpTo Sort!
Merge Information From Other Data Bases
//We/jre Standard Text Files!
Add Or Delete Fields From Data Base
Merge Previous Entered Data From Existing File
Back Up A Data Base
(Make A Back Up Of Current Source Data)
Pack A Data Base
IRemove Deleted Records From Disk Storage)
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
FILE
MANAGER
••800"
REPORT GENERATOR
Design Report To User Specifications
Level Breaks Allowed At Users Option
lUp To 4 level Breaks Per Report!
■ Designate Font To Be Used In Ropori
Boldfacing Allowed In A Report
IVl/itb Dot Matrix Printer!
Mathematical Formulas Allowed In Report
(Example, Field Y + Field 'y' - Field '/)
Auto Page Number Allowed In Report
Auto Date Entering Allowed In Report
Repeating Characters Allowed
Optional level Breaks 'and Page
Breaks When Sort Values Change
Up To 7 Lines Allowed For
Header on Each Report
Up To 2 Lines Allowed For Detail!
Information On A Report
Variable Spacing Allowed Between Data
On Items In A Report
Multiple Fields Allowed in A Report
(Umber, Date, Alpha, Formula)
Search Crilerian Allowed On Report
(Same Criteria As In Editor)
Ability To Have "Literal" Data
Printed In A Report
Ability To Have "Conditional" Data
Printed In A Report
Use A Default Date Field
Designate Default Value For Specific Fielifi
LABELS REPORT GENERATOR
Mailing Labels Allowed
(Specifically Designed For Labels)
User Designs Data Placement On Label
(One Across Label Design)
Multiple Fields Allowed On Label
lOate, Alpha, /tumeric, Formulai
Repeating Characters Allowed
Front Designation Allowed
Print Labels On A Conditional Basis
Search Criteria Valid On Label
(Same Search Criteria As Editing)
MATHEMATICAL ABILITIES
Basic Math Calculation
Addition, Substractjon, Multiplication, Division '
Built In Calculator lAutomaticI
(Use In Editing, Or Adding Data)
Find the Integer Value Of A
Numeric Expression ,_____„™_«„
Find The Log Base 'e' Of Y
Find The Log Base 10' Of'
Find The Absolute Value Of'n
Exponentantial Notation Used
Find The Square Root Of'n'
Formulas Allowed Between Fields „
(field X /+ - '/) Field y - Field r]
[Field x /+-yyN - Field Y|
SPECIFICS
Maximum Number Of Fields Per Record
Maximum Number Of Formulas In A File
Maximum Length Of A Field
Maximum Record Length
Maximum Number Of Level Breaks
Records Per Diskette
(Depends On Length And Number Of Fields)
Data Bases Allowed On Each Diskette
ICan Be Expanded To Additional Diskettes)
Form Letter Capability
ICompatible With Letter Perfect)
D.P.
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
YES
32
16
127
511
4
" VAR.
UNT
YES
'• "ic
UK ENTERPRIES, INC.
P.O. BOX 10827
ST. LOUIS, MO. 63129
[314] 846-6124
Atari - A Trademark of Atari Inc., Full View 80 a Tiadc Mark of Bit 3 Computers,
Fill Manager 800 A Trademaik of Synapse Software, Letter Perfect, Data
Perfect A Trademark of UK Enterpries, Inc.
PAGE 68
A.N.A.L.O.G. COMPUTING
ISSUE 10
TRAPPING YOUR ATARI
16K cassette or disk
by Donald B. Wilcox
It is often frustrating to be forced to restart a
software program because an inadvertent error
caused the program to crash. ATARI BASIC
provides a special word — TRAP — that often can be
used to prevent a program from ending before
intended. Many errors are subject to automatic
correction or compensation through a Uttle extra
effort on the part of the programmer.
If you are not yet familiar with the TRAP
statement, the following example shows how to use
it to detect INPUT errors. These occur when the user
of a program types invalid numeric values into a
numeric variable.
10 INPUT X
20 PRINT X
30 GOTO 10
In the above listing, typing a non-numeric
response to the INPUT statement in line 10 (such as
accidentally pressing return with no number
entered) will result in an "ERROR-8 AT LINE 10"
message. By adding a TRAP statement, this problem
will be avoided completely.
10 TRAP 10: INPUT X
20 PRINT X
30 GOTO 10
In the slightly modified example above, if an input
error occurs, the TRAP statement will catch the
error and go back to line 10 to try the INPUT again.
This short article presents some common errors
that can be prevented with a few extra lines of code.
After perusal of these five examples, you should be
able to understand how to make your programs less
vulnerable to errors that prematurely end your
program.
PROGRAM ONE - If you mistakenly create a new
file using a file name that already exists, you will
destroy the already existing file. No error message
will warn you of the impending disaster. Program
ONE will prevent this.
PROGRAM TWO - If you try to OPEN a non-
existent file, you will get error message — 170 and
your program will crash. This can be prevented by
using Program TWO.
PROGRAM THREE - If you try to input data
from a disk file beyond the end-of-file, you will get
error message — 136 and your program will
terminate. You may not always know beforehand
where the file data ends, so an automatic end-of-file
trap can be programmed easily to prevent error —
136. Program THREE will solve this problem.
PROGRAM FOUR - You forgot to turn on your
printer or interface unit and get error message —
138. If you attempt to use the CONTINUE
command after you turn on the correct unit, your
program will continue beginning at the line number
that follows the line that caused the error. Often this
can create erroneous results (not always detected)
because the instructions on the line that caused the
error may not have been executed correctly before
the error.
PROGRAM FIVE - You are reading in data with a
READ statement and you do not want to use an end-
of-data dummy value as a flag nor do you want to
count the entries to determine when all the data has
been read. Program FIVE demonstrates a simple
method to prevent error #6 (out of data) from
prematurely terminating your program.
Finally, for those of you who are relatively new to
ATARI BASIC, there are several locations
(addresses) that you may PEEK to find out which
error occured and which line caused the error.
Location 195 contains the error number. Locations
186 and 187 contain the line number where the error
occured, low byte, high byte respectively. To display
this information on your screen, use the following
statements as one method.
10 REM DISPLAY ERROR NUMBER
20 REM OND LINE NUMBER OF ERROR
30 ? PEEK (195);" AT LINE 'S-PEEK C186) +P
EEKtl87)»256
Happy trapping in your future programs. D
PROGRAM 1
100 ? "'H":CLR :REM CLEAR SCREEN AND VA
RIABLE5
110 REM PREVENT ERASURE OF PROGRAM ALR
EADV STORED ON DISK
120 DIM ATRAP$(e),ASC124),NAME5C8),FIL
EStlO)
130 REM SET UP DISK SUFFIX 'D:' FOR FI
LE NAME. lOCB IS FILEtDEVICEJ NUMBER
140 FILES="D : ■■ : I0CB=2 : IN=4 : GNU=8
150 REM GNU=8 IS THE OUTPUT NODE
160 SET=160: CLOSE ttlOCBzIF ATRAPS="5PR
UNG" THEN PRINT " FILE NAME DID NOT PR
EUIOUSLY EXIST": GOTO 200
170 TRAP SET: PRINT "ENTER FILE NAME"
180 INPUT NAME$:FILES(3)=NAME$:ATRAP$=
"SPRUNG":0PEN ttlOCB, IN, 0, FILES
190 PRINT FILE5;" ALREADY EXISTS":? "U
SE A DIFFERENT NAME":CLOSE ttlOCBiGOTO
170
208 OPEN ttIOCB.GNU,e, FILES
210 PRINT FILES;" OPENED SUCCESSFULLY"
220 CLOSE ttlOCB
NOT EVERYONE CAN TEACH THEIR ATARI™ NEWTRICKS...
WE MAKE USING AND LEARNING ABOUT COMPUTERS FUN!
PROGRAMMING GUIDE FOR BEGINNERS OR EXPERTS - MASTER
MEMORY MAP.™ A 32 page book with hundreds of hints on how to use
your computer. Over 500 memory locations! $6.95.
LEARN SOUND AND GRAPHICS with our exciting lessons called
TRICKY TUTORIALS.™ Each comes with atape ordiskfull of examples,
and a 12 to 64 page manual written in an easy to understand manner.
#1 DISPLAY LISTS — Put several graphics modes on your screen at
once. #2 SCROLLING — Move text or graphics smoothly up, down,
sideways, or diagonally. #3 PAGE FLIPPING — Change TV screens as
quickly as flipping pages in a book. #4 BASICS OF ANIMATION — A
beginner's lesson in animation using PLOT, PRINT, and a surprise
game. #5 PLAYER MISSILE GRAPHICS - Learn the basics of writing
your own arcade games. #6 SOUND & MUSIC — Simple methods to
play complete songs, with graphics. Includes PLAYER PIANO free! #7
DISK UTILITIES — 7 programs to help you use your disk drive. 32K. #8
CHARACTER GRAPHICS — The best editor available with examples
using special characters YOU CREATE and ANIMATE. #9 GTIA,
GRAPHICS 9 to 11 — New tricks you can do with these 16 color modes.
#10 SOUND EFFECTS — Many examples, from rainfall to laser blasts,
4565 Cherryvale Ave., Soquel, Ca. 95073
with ample explanation. #11 MEMORY MAP TUTORIAL - 3D colorful
examples of tricks your computer can do.
TUTORIALS 1 to 4 are $19.95 each. Numbers 5 to 11 are $29.95 each.
16K Tape or 24K disk. SPECIAL: Tutorials 1 through 6 for $119.95.
SAVE $20.00!
WRITE FOR A CATALOG OR CALL FOR ORDERING INFORMATION
VISA/MC/COD: (800) 692-9520 OR (408) 476-4901
OUR GUARANTEE: Your money back if unsatisfiedl
"AVAILABLE
FROM DEALERS
WORLDWIDE.
Educational
Software inc.
DISKEY
by Sparky Starks
Potential into practical reality. This is the
core of DISKEY — a remarkable utility program
that gives ATARI disk drive owners the flexibility
to accomplish tasks that other utilities either
ignored or only hinted at. With DISKEY, the user
w/ill be able to actually examine a disk and its
directory, and repair some files that might
otherwise have been lost. DISKEY also per-
forms a multitude of other practical functions,
including the following:
• Automatically lists any unreadable or
destroyed sectors
* Sends contents of disk to printer selectively
• Up to four separate drives may be addressed
• Can be used to backup some of those "un-
backupable" disks
* Allows direct examination of any file
* Over 50 separate key functions available
As an ATARI 400 or 800 owner, you have ex-
traordinary power and versatility at your
disposal. Tap into those resources effectively
with DISKEY — new from Adventure Interna-
tional.
ATARI 400/800 32K DISK
052-0158 $49.95
(Note: Some features will require 40K)
SOME OF DISKEY KEY FUNCTIONS
A Clear screen and filename
B Byte compare, D1 to D2, OS to DS
Copy sectors, OD to DD, OS to DS
D Toggle destination drive
E Erase disk (format)
F Select file sut>menu
L Set automatic function lower limit (OS)
M Modify Sector f^ap
N New destination sector
Toggle originate drive
P Print screen to printer
Q Query (searcli for hex key, drive OD, sector OS
to DS)
R Read new OS, set DS to matcti
8 Search for ASCII key, drive OD, sector OS to DS
T Tape to disk
U Upper case conversion of printer lower case
V Toggle write verify
W Write memory buffer to sector DS, drive DD
X Select EOR Sector IVIap screen print mask
Z Zero memory buffer
+ Read upward, next sector on disk
- Read downward
? Directory information
1 Select directory sub-menu
cB Byte compare, 01 to D2, whole disk
cC Copy D1 to D2, whole disk
cD Decimal to hex, ASCII conversion
cE Erase disk (without new format)
cF f^lodify sector forward sector chain reference
cH Hex to decimal, ASCII conversion
cL Locate bad sector on drive OD
cN Modify sector file number reference
cO Select one-drive functions sub-program
cP Print currant Disk Map
cR HPM test drive 00
cS Special file copy, no directory reference from
source
cV VTOC update and repair, drive 00
cY Toggle Sure Response prompt enable
FA File binary load address headers to printer
FD Delete file
FF Select filename for all file functions
FL Lock file
FM Show memory address load position In file
FQ Relative Query
FR Rename file
FS Relative Search
BASIC
ROUTINES " #
FOR THE ATARI
Finally, a self-help system that cuts
through the stuffy technical jargon and
allows the user to learn effective
programming techniques fast! BASIC
ROUTINES FOR THE ATARI has been
written especially for ATARI 400 or 800
users who wish to write programs in
BASIC. This package comes complete
with an extensive manual and your
choice of a tape or disk which contains
all of the routines from the manual —
which means you'll be able to actually
see each of them in action on your
ATARI. Some of the BASIC routines
include joystick, sound, player missile
strings and much more — and presented
in a way that you'll quickly be able to
learn and apply to your own programs.
If your programming ability lies
somewhere between beginning and
advanced, then look no further — BASIC
ROUTINES FOR THE ATARI is the
system for you.
BASIC ROUTINES book with 16K TAPE
051 01 54 $24.95
BASIC ROUTINES book with 24K DISK
052-0154 $24.95
Published
by
BOX 3435
^-^. ■ ^—y,^ ® COPYRIGHT 1982
(O {Am<^venture
^ ^-C 5V^^^ INTERNATIONAL
a subsidiary of Scott Adams, Inc.
' LONGWOOD, FL 32750 • (305) 830-8194
To order, see your local dealer. If he does not have the
program, then call
1 (800) 327-7172 (orders only please) or write for our free
catalog.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 71
PROGRAM 2
i®S^K5JS7^1''^" = c'-R :hem clear screen an
D VARIABLES
119 DIM ATRAP$t6),NAMESC5J,FILESt8J
128 REM SET UP DISK SUFFIX FOR FILE NA
ME. lOCB IF THE FILEIDEVICE3 MUMBEH.
m=4 IS THE INPUT MODE
130 FILESr"D:":I0CB=2:IN=4
140 REM i4RITE ERROR IF TRAP IS SPRUNG.
IT IS GOOD PRACTICE TO CLOSE FILES T
PREVENT ERROR ni23 IF YOU LOOP BACK
159 REM TO A PREVIOUS PART OF VOUR PRO
GRAM THAT OPENS A FILE.
160 SET=169! CLOSE ItlOCB
170 IF ATRAPS="SPRUNG" THEN ? "ERROR 1
78, FILE "jFILES;" MON-EXISTANT" :FOR D
=1 TO 1800:NEXT D:GOTO 100
188 REM KEEPS MESSAGE ON SCREEN TEMPOR
ARILV BEFORE RETURNING TO BEGINNING OF
PROGRAM
198 TRAP SET: PRINT "TYPE IN FILE NAME"
rPRINT "DO NOT INCLUDE 'D:' PREFIX";IN
PUT HAME5
288 FILE$(3J=NAME5:REM CONCATENATES FI
LE NAME ONTO DEVICE PREFIX 'D:'
218 ATRAPS="SPRUHG"
228 REM IF THE 'OPEN' STATEMENT WORKS,
WE HAVE A VALID FILE NAME ALREADY STO
RED ON DISK READY FOR INPUT
238 OPEN ttI0CB,IN,8,FILE5
240 PRINT "FILE "J FILES;" OPENED SUCCE
SSFULLV"
250 CLOSE ttlOCB
PROGRAM 3
108 PRINT "«":CLR :REM CLEAR SCREEN AN
D VARIABLES
118 REM CATCH END-OF-FILE ERROR
128 DIM ATRAP$t6J,AStl243,NAME$C8J,FIL
138 FILES="D : " : I0CB=2 : IN=4 : GNU=8
148 REM -D:' IS FILE NAME PREFIX. IN=
4 IS INPUT MODE. GHU=8 IS OUTPUT MODE
. lOCB IS DEVICE fFILEJ NUMBER
158 REM FIRST WE MUST CREATE A FILE AN
D PUT SOME DATA IN IT BEFORE TRYING TO
READ THE DATA.
160 PRINT "ENTER A FILE NAME": PRINT "D
NOT INCLUDE THE 'D:' PREFIX"
178 INPUT NAMES:FILESt3)=NAMES:REM CON
CATENATES PREFIX AND FILE NAME
180 OPEN ttlOCB, GNU, 0, FILES
198 REN WRITE DATA ONTO FILE.
200 PRINT ttlOCBj "FIRST"
218 PRINT ttlOCB; "SECOND"
220 PRINT l«OCB;"LAST"
238 CLOSE ttIOCB:REM IT IS GOOD PRACTIC
E TO KEEP A FILE CLOSED WHEN NOT USED
248 REM FAILURE TO PROPERLY CLOSE A FI
LE CAN CAUSE IT TO BE LOST
258 REM
268 REM READY TO READ THE FILE
270 OPEN ttlOCB, IN, 0, FILES
288 SET=310:THAP SET
290 REM READ DATA FROM FILE AND PRINT
EACH VALUE AS IT IS READ
380 INPUT ttlOCB, AS: PRINT AS: GOTO 298
318 PRINT "FINISHED READING FILE SUCCE
SSFULLV": CLOSE ttlOCB
320 REM DELETE LINE 280 AND YOU MILL G
ET AN ERROR MESSAGE 136 CEND OF FILEJ
PROGRAM 4
188 PRINT "H":CLR :REM CLEAR SCREEN AN
D VARIABLES
118 REN CATCH DEVICE TIMEOUT ERROR tt 1
38
128 REM YOU FORGOT TO TURN ON AN INPUT
OR OUTPUT DEVICE
138 DIM ATRAPSC6)
140 SET=148:1F ATRAPS="CAUGHT" THEN PR
IMT "TURN ON I/O DEVICE"
150 TRAP SET:ATRAPSr"CAUGHT"
168 {-PRINT "PROGRAM RAN SUCCESSFULLY"
PROGRAM 5
:CLR :REM CLEAR SCREEN AN
100 PRINT "«■
VARIABLES
118 REM READ DATA AND TRAP OUT-OF-DATA
ERROR t*6
iS2 5ET=140:TRAP SET: REM DELETE THIS L
INE AND ERROR tt6 MILL OCCUR
138 READ N:PRINT N:GOTO 130
140 PRINT "FINISHED READING DATA"
158 DATA 20,4,156,83,12
ABOUT THE COVER. . .
Yes, there really was someone in that suit of armor, and that someone
was none other than editor Mike DesChenes, revealed here for the first
time. The suit of armor he was wearing was a replica, but the suit in the
background is an original — German ceremonial armor for a young man,
fashioned after combat armor, circa 1540-1550. The armor was
provided by the Higgins Armory Museum. The Higgins Armory
Museum houses the largest collection of medieval armor, tapestries and
weaponry in the entire Western Hemisphere, and the Museum was kind
enough to let us photograph our cover there. Unlike our last five covers,
there were no double-exposed elements in the shot — only colored gels
over the lights were used.
We invite all of our readers in the New England area to visit the
Higgins Armory Museum, located at ICO Barber Avenue, Worcester
MA 01606. Phone (617) 853-6015. The Museum is open Tuesday
through Friday 9 a.m. to 5 p.m.; weekends and holidays 12 to 5 p.m. The
Museum is located just off 1-90 and West Boylston Street at the corner of
Barber Avenue and Randolph Road. Please visit the Higgins Armory
Museum — we guarantee you a fascinating experience.
w wp.C'^ ir,gf%mf mf #. WW3. wm
\&M ^k '^m M.: M^ i>:'H 1.''^ tiiik &■ issm ^^
This advertisement has no
headline!
Mere words fail to convey
the excitement that is truly
LEGIONNAIRE.
Designed & Programmed by Chris Crawford for Avalon Hill
LEGIONNAIRE is a real
time game of combat between
the Roman Legions of Juilus
Caesar (you) and the Gaulish
barbarian hordes (the
computer). High resolution
scrolling graphics and sound
brings you the live action. You
have up to ten legions to
command, each with different
strengths and weaknesses, and
a choice of any two of sixteen
different barbarian tribes to
fight. As Caesar did two
thousand years ago, you must
meet the Gauls and defeat
them. They outnumber you at
least two to one, so you must
use the terrain and the
disorganization of the
barbarians to counter your
disadvantage in numbers.
Above all, you must be able to
react quickly to the changing
battlefield situation, or the
battle depicted above could
happen to you! Caesar
managed to conquer all of
Gaul -can you do as well, or
will the barbarian hordes
defeat your legions?
LEGIONNAIRE is ready to
run on your Atari® 400 or 800
with 16K cassette or 32K
diskette and one joystick.
Available at finer computer
and hobby stores everywhere. To
order by phone, dial TOLL FREE:
1-800-638-9292
and ask for Operator A, or write:
Avalon Hill Microcomputer Games,
Dept. 81, 4517 Harford Road,
Baltimore, MD 21214. Please add
10% for postage and handling.
^Trademark of Warner Coniniunications
Witti Cassette For:
Witli Diskette For:
PRICE
SOFTWARE
GAMES
rns-BO
Color
TRS-SO
Models
1 A III
ftPPLE
11 +
PET
C8M
2001
ATARI
400/
800
TRsao
Models
1 am
APPLE
11 +
ATARI
400/
800
IBM
PC,
Legionnaire
16K
35.00
32K
40.00
V.C,
16K
16K
32K
32K
20,00
32K
48K
40K
26.00
D.F.S.
Sorceress
48K
48K
48K
30,00
48K
48K
40K
35.00
Andromeda
Conquest
16K
16K
16K
32K
18,00
32K
4eK
40K
48K
23.00
Moon Patrol
16K
25.00
Teiengard
4eK
48K
32K
48K
23.00
48K
48K
48K
26.00
Draw Pol(er
16K
48K
8K
16K
16,00
48K
48K
21,00
Voyager
16K
16K
32K
32K
24 K
20.00
48K
32K
48K
25.00
microcomputer games*
I A Division of the Avalon Hill Game Company
QUALITY 4517 Harford Rood • Baltimore, MD 21214
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 73
MOVING PLAYERS IN BASIC
16K cassette or disk
by Tom Hudson
Just before issue #9 of A.N.A.L.O.G. went to
press, I was handed a letter from Long Mai of Salt
Lake City, Utah (see the Reader Comment section of
this issue). Like many BASIC programmers, he was
frustrated by BASIC'S snail-like pace, and asked for
a machine-language subroutine that could be used
with BASIC to move player-missile graphics around
on the screen.
Unfortunately, it was too late to write such an
article for issue #9, but here it is, along with fully
documented assembly-language code.
THE PROBLEM
Player-missile graphics are one of the most
powerful graphic features of the ATARI 400/800
computer systems. Unlike traditional graphics,
players and missiles can be moved around on the
screen without disturbing the existing display.
In order to use players and missiles, one must first
reserve a portion of memory. Once this is done, the
user can begin designing and displaying the players
and missiles.
The problems begin when the user wants to move
a player or missile around on the screen. Horizontal
movement is done easily. A POKE to the appropriate
horizontal position memory location will move the
desired player to any horizontal location on the
screen. If the user wants to move a player or missile
vertically, he or she must copy the P/M bit image to
another location in memory. BASIC is too slow to
do this, but it can call a machine-language subroutine
to do the "dirty work."
THE PROGRAM
The BASIC program listed here will allow the user
to move any player around on the screen. It calls the
P/M movement subroutine, shown in the Assembly
language listing.
As listed, the program will move a shape around
on the screen at random. The shape of the player is
stored as a series of bytes in the string "P0$". By
altering the data in line 420, you can change the
shape that appears on the screen. There are currently
7 bytes in line 420, but this can be changed by
altering lines 130, 290 and 420.
Lines 110-180 set up the subroutine and turn on
the P/M graphics. Lines 220-310 are for
demonstration purposes only. You can put your
program code in this section.
Line 110 -Loads the string PMMOV$ with the
P/M movement subroutine.
Line 130 - Places the data that defines the graphics
shape into the string P0$.
Line 140 - Tell the system where the P/M memory
starts.
Line 150 -Saves the P/M base address.
Line 160 -Saves the graphics data string address.
Line 170 -Turns on P/M direct memory access.
Line 180 - Sets the color of player to light blue.
Line 220 - Initialize the X and Y coordinates of the
player.
Line 230-280- Alter the X and Y coordinates to
move the player.
Line 290 -This USR call moves the player to the
desired X and Y location. This statement has 7
parameters inside the USR parentheses:
fl=UrjR(M0UE,e,PMB,PMD,K,Y,7)
"MOVE" is set up in line 110. Do not change this
variable. It is the address of the P/M mover
subroutine.
"0" means that we want to move player zero. This
value can range from to 3, moving players
through 3.
"PMB" is the P/M base address. Do not change
this value.
"PMD" is the address of the string that holds the
player image data. This should be set to the address
of the string you are using to hold your player shape
data. If your player shape data is in a string called
"PL$," you could replace "PMD" with
"ADR(PL$)".
An "X" and "Y" are the horizontal and vertical
coordinates when you want to place your player. X
ranges from 0-255, and Y ranges from 0-127.
"7" in this case indicates that our player is 7 bytes
long (see line 130 and the player image data in line
420). If your player is 10 bytes long, place a "10"
here.
SUMMARY
This program should help out anyone who wants
to use player-missile graphics from BASIC. If there
are any questions, write me care of A.N.A.L.O.G.
(please include a pre -addressed, stamped envelope).
If there is a specific application you would like to see
appear in a future issue, just ask. You never know —
there may be hundreds of other readers who would
like the same information. D
PAGE 74
A.N.A.L.O.G. COMPUTING
ISSUE 10
PROGRAM 1
10 REM MMMKMKKKKMKMKICKMKXKICKMMKMICKKK
29 REM # P/M MOVER SUBROUTINE DEMO *
SO REM * *
40 REM « BY TOM HUDSON #
Se REM « M
68 REM * A.N.A.L.O.G. COMPUTING »
70 REM KKKKKKKICICKKXMMMMKKKMMMXKKMKXK
80 REM
90 REM KMKMKKKMMICK SETUP MMKMKKICICKKM
lee REN
118 DIM PMM0U$(10e} ,Pe$f3e) :MOUE=aDRCP
MM0UI$3:F0R K = l TO 188: READ N:PMM0U$CM}
=CHRSCN) :NEXT K : REM «READ ML DATA*
120 REM «*» NOM READ SHAPE DATA ***
138 FOR X=l TO 7:READ N:P8$ CK)=CHR$ (N)
i48 PMBASE=IHT C tPEEK (145) +35 /4) «4 : POKE
54275, PMBA5E:REM »*» SET UP P/M AREA
158 PMB=PMBASE*256
168 PMD=ADRCP8$) :REM *** P/M DATA ADDR
ESS «»*
178 POKE 559,46:P0KE 53277, 3:REM *** P
/M DMA *»»
188 POKE 784, 136: REM *** PLAYER COLO
R *iHt
190 REM
288 REM iHBHe YBUR PROGRAM HERE! WBHf
210 REM
228 K=128:V=64
230 XI = l-INTtRNDt83«33 : YI = 1-INT (RND t85
K3)
240 X=K+KI:Y=V+YI
258 IF X<58 THEN X=58:G0T0 278
260 IF X>190 THEN X=190
278 IF Y<28 THEN Y=28:G0T0 290
280 IF Y>118 THEN Y=H8
298 A=USRCM0gE,8,PMB,PMD,X,Y,7)
380 IF RNDC0J>O.95 THEN 230
318 GOTO 248
320 REM
330 REM WHf PM MOVER DATA «H*
340 REM
358 DATA 216,184,184,184,133,213,184,2
4,105,2,133,206,184,133,205,104,133,28
4,104,133,203,184,104,133,288
368 DATA 184,184,133,289,184,184,24,10
1,209,133,207,166,213,240,16,165,205,2
4,185,128,133,205,165,286,185
378 DATA 0,133,286,282,288,240,168,0,1
62,8,196,289,144,19,196,287,176,15,132
,212,138,168,177,283,164
388 DATA 212,145,285,232,169,8,240,4,1
69,0,145,285,200,192,128,288,224,166,2
13,165,208,157,0,208,96
398 REM
480 REM «** PLAYER IMAGE DATA ***
410 REM
420 DATA 255,129,129,231,129,129,255
(see D:CHECK 2, p. 26)
iS S^TA 532,930,996,64,8,483,544,265,9
89,74,765,328,743,901,536,8870
160 DATA 729,778,445,101,552,79,854,96
8,479,928,983,921,954,424,374,9561
318 DATA 704,84,588,90,639,732,435,188
,185,191,83,56,3887
ASSEMBLY LANGUAGE LISTING
YP03 = $D1
HOLD = $04
PLNUM = $D5
iY POSITION
;HOLD AREA
;PLAYER « TO M(WE
iPERATING SYSTEM EQUATES
HPID3P8 = $0009
; PROGRAM ST«!T3 HERE'
START
jHORIZ. pmiim
PLCALC
EhBCAL
CIFYLP
ZERO
NEXT
;PA6E ZERO USAGE
mm = $CB
PLADR = ICD
PMEND = $CF
XPOS = $D8
;P/M BASIC STRING
i PLAYER ADDRESS
•PLAYER IMAGE END
;X POSlTIft'J
ORG um
iWY ADDRESS
CLD
jCLEAR DECIWL MODE
PLA
;DISi:y!RO
PLA
; DISCARD # HI
PLA
;PULL PLAYER « LO
STA PLNUM
•AND SAI;E IT'
PLA
iPULL P/M BASE HI
CLC
;ADD OFFSET TO GET
ADC n
;PLAYER MEMORY ADDR
STA PLADR+1
!*WD SAi;E'
PLA
;PULL P/N BASE LO
STA PLADR
iAND SVJE'
PLA
■PULL STRING HI
STA PMSTRtl
jAND a¥JE'
PLA
;PI3LL ST^IHG LO
STA PMSTR
jAND Sfil4V.
PLA
iDISMRD X HI
PLA
jPULL X LO
STA XPOS
;(WD SAl.'E IT!
PLA
; DISCARD Y HI
PLA
IPULL Y LO
STA YPOS
;AND SAfJE IT'
PLA
jDISCARD LEhMH HI
PLA
jPULL LENGTH LO
CLC
lADD Y POSITION
ADC YPOS
;T0 6ET END
STA PMEND
■,m\) :3AUE IT'
LDX PLNlll
;GET PWYER«
BEQ fflDCAL
;N0 INDEX NEEDED!
LDA PLADR
;ADD 120 TO
CLC
i PLAYER
ADC #128
;ADDRESS
STA PLADR
;T0
LDA PLADR+1
;P01NT TO
ADC #e
;NEXT
STA PLADR+1
i PLAYER.
DEX
ANOTHER ADJUSTMENT?
BNE PLCALC
YES'
LDY m
ZERO P,^ COIM
LDX #8
,ZERO STRING COUNT
CPY YPOS
COPYING DATA YET-?
BCC ZERO
NO!
CPY PMEND
FINISHED COPYING?
BCS ZERO
YES'
STY HOLD
3AUE Y REG
TXA
MffJEX REG...
TAY
TO Y REGISTER
LDA (PMSTR) ,Y ;
GET P/T1 BYTE
LDY HOLD ;
GET P/M (FFSET
STA ( PLADR) ,Y :
CHANGE PLAYER!
INX'
NE>fT STRING BYTE.
LDA 18 ;
FORCE BRANCH
BEQ NEXT ;
TO ^Ci<T BYTE!
LIM «e
ZERO OUT...
STA (PLADR) ,Y
PLAYER BYTE!
IWY \
NEXT P.'M BYTE
CPY #123 :
DCJ€ U/COPY?
BNE COPYLP
NOT DONE YET!
LDX PLNIH ;
GET PLAYER #
LDA XPOS
NOU JUST SET
STA HP0SP8,X :
X LOCATION!
in-s
FINIS'
.END
FIRST BORN IN 1978!
the original & continuously updated
CCA
Data Management
System
NowAvailableForAtariComputers $ 99.50
For Apple Computers 150.00
For CPM Based Computers 225.00
CCA Data Management System
Uses Features And Capabilities
MEMORY
For ATARI® 400/800
INTRODUCTORY OFFER
' Business
Accounts Receivable
Accounts Payable
Inventories
Billing
Lists and Rosters
• Honne Phone Lists
Budgets, Hobbies
• Long record lengths
• Up to 24 fields per record
• Not Copy Guarded
• Alpha numeric items
• Numeric only items
• Add, update, scan, etc. files
• 10-Level sort ascending, descending,
allows alphabetizing data file.
• Contact your local dealer for
details or v^/rite us for our catalog
I
DIVISION OF CUSTOM ELECTRONICS. INC.
SOFTNA/ARE
23B Exchange St., Chicoptw. MastacHusettt 01013
(413) 592-4761
Mattercord & VtSA Accepted
* Dealer And Distributor Inquiries Invited
Cloud Mondays — Open Daily 'Til 5:30 — Fridays 'Tit 8
Size
Board
Only
Kit
Assembled
+ Tested
16K
32K
$19.95
$29.95
$49.95
$79.95
$54.95
$84.95
LIFETIME WARRANTY
GOLD PLATED CONTACTS
BONTEK
MPO Box 547
Niagara Falls, IMY 14302
Call: (416) 245-9758
Add $5 Shipping, Insurance, Handling
\A/HY PAY MORE?
FOR ENTERTAINING SOFTWARE FOR YOUR ATARI 400/800*
I
ALl SOFTWARE AT LEAST 20% OFF RETAIL PRICES-AILTHETIME! 30-40% OFF ON SPECIAL SALE SOFTWARE!
I
■
MORE THAN 100 DIFFERENT GAMES. SIMULATIONS, PUZZLES, & ADVENTURES FROM ARTWORX, ADVENTURE INTERNATIONAL.
EPYX, AVALON HILL, ONLINE. DATASOFT. ARCADE PLUS. IDSI, GEBELLI & MORE!
I
■
FREE CATALOG FREE NEWSLETTER FREE SHIPPING ON ORDERS OVER $150 FREE MASTERCARD AND VISA USE ■ MOST
ORDERS SHIPPED SAME DAY RECEIVED OR NEXT DAY ONLY $2.00 SHIPPING AND HANDLING PER ORDER
BOX S47 IME\A/ FLOREIMCE, PA 15344
(4nSlS35-SS7a
PA residents add 6% sales tax
*trademarkof Atari Inc.
Diggerbonk! contains
the following ingre-
dients: Orange
Whirlers, Pulsing
Greenies, Twinklers,
Bombs, Fog, Purple
Gurples, Yellow
Blinkers, Aqua
Chasers (watch out),
and of course the
PANIC BUTTON.
,OV/.NCEOABCAOEGA*«E
GUESS IVHAT'^
COMING TO I
DINNER 7
For those of you who always
wanted a pet snake, this game
is for you. What do you feed
a guest like this? An ample
supply of insects, of course,
but be aware that snakes often
wind up biting themselves or
getting electrocuted on their
cage walls if not properly
trained. Difficulty levels for all
ages. $24.95.
Prototype the Robot needs the
help of your child, 4 or older. His
busy day includes catching mar-
shmallows being dropped by
friendly Aliens, Coloring pic-
tures, and Playing tunes on his
piano. $24.95
ONLY $29.95
Diggerbonk! is the first arcade style game with a continuously scroll-
ing maze that never repeats. You must guide your Digger upward before
it goes off the bottom of your screen. There are, however, a few pro-
blems you must BONK! along the way (see ingredients). To add to
the complication, you need to BONK! the creatures in a specific order.
Playable by all ages, but be prepared to end up with a NEGATIVE
SCORE.
PROGRAM
EXCHANGE
EDUCATIONAL SOFTVWRE inc.
AVAILABLE FROM DEALERS WORLDWIDE.
WRITE FOR A CATALOG OR CALL FOR ORDERING INFORMATION
VISA/MC/COD: (800) 692-9520 OR (408) 476-4901
4565 Cherry vale Ave., Soquel, Ca. 95073
Do you like to challenge your
mental powers? Try to solve this
color matching puzzle in less
than 11 moves. Play it against
the computer or a human. Easy
you say? SURE $16.95
AT SSI, WE GROW MORE THAN APPLES.
INTRODUCING SOME NEW FRUITS OF
OUR LABOR... FOR THE ATARI!
At SSI. we cultivated our fine reputation
In the computer gaming world by produc-
ing some of the best Apple® games around.
But to paraphrase an old saying, "Man
does not live by Apples alone."
So we bent our backs to the task of con-
vert ing some of our Apple crops to the
ATARI® 400/800. The three games you see
above are the new fruits of our labor.
As part of our exciting RapldFlre series,
they contain all the ingredients needed to
make the perfect strategy simulations for
your Atari. Rooted in popular science-
fiction and fantasy themes, they are
thallenging and sophisticated - yet fast
and full of fun!
Best of all. they're ripe for the picking at
your local computer/game store today!
■ CYTRON MASTERS" puts you in chaiige of a
.small army of Cybernetic Electronic Devices.
Your forces consist of laser-blasting shooter
units, kamikaze-like mine cytrons, mobile
bunker cytrons, guided missiles and anti-
mls.slle.s. Use these mindless but deadly
machines to crush your hapless foes, and you
will someday become a...Cytron Master \
On 48K disc for *39.95: 32K cassette for *34.95.
■ GALACTIC GLAmATORS" takes you to a
remote comer of ourvasi universe lo participate
in a wild and crazy cosmic shootout. We' re talk-
ing about four-armed Froglodytes with phasor
ritles, Vlklng-like Wodanltes wielding laser
swords, and ugly Mutants whose only socially
redeeming feature is their Death Touch. And
theseare the nice folks! On 48Kdisc for»39.95.
*ATARI Is a registered trademark of Atari Inc.
■ THE COSMIC BALANCE" Is a tactical space
game that not only lets you wage magnificent
starshlp battles, it gives you the chance to
design and build your ships from the ground
up! With a host of variable parameters to choose
from, you can equip your fleet with ships optimal-
ly designed to suityourstyle of space warfare. On
48K disk for »39.95.
Commg soon - COSMIC BALANCE II - the
strategic-level adjunct to The Cosmic Balance.
If there are no convenient stores near you,
VISA and M/C holders can orderdlrect by calling
800-227-161 7. x335 (tollfreej. In California, call
800-772-3545, x335.
To order by mall, send your check to: Strategic
Simulations Inc. 465 Fah-chlld Drive, Suite 108.
Mountain View. CA 94043. California residents,
add 6Vi% sales tax.
WRITE FOR A FREE COLOR CATALOG OF ALL OUR ATARI GAMES TODAYI
■■(llIJLHLmCntfaKtRliL'wsEVi
movie monster. You! As any of six
different monsters. More if you
have tfie disl< version.
You can terrorize and destroy
four of the world's largest and
most densely populated cities in
over 100 possible scenarios.
From Tokyo to the Golden Gate,
you are the deadliest creature in
the air, on the land, or in the sea.
You can be the deadly am-
phibian who simultaneously
smashes street cars, lunches on
helpless humans and radiates a
ray of death.
If you were a giant winged
creature, think of the aerial
attacks you could make on the
terrified but tasty tidbits beneath
you.
But as in all the best monster
movies, you're up against every^
thing the human race can throw
at you— even nuclear warheads
and a strange concoction devel-
oped by a team of mad scientists.
For only $29.95 you get 6 stu-
pendous monsters, each with its
own monstrous summary card,
4 teeming metropoli displayed in
graphic detail on your computer
display and mapped in the
accompanying 48-page illustrat-
ed book, the awesome sounds of
monsterly mayhem, and spine-
tingling, real-time, edge-of-your-
seat excitement.
-^^HBpiii^T
1 .. S. ' '
/
M «^ J
-^■:
fij
■~«_ ''"'^•**«saB'«i.«.
GET CRUSH, CRUMBLE & CHOMP
now at your local dealer for your APPLE, ATARI,
or TRS-80 . . before its too late.
^ji
§^i«
©1981, Automated Simulations, Inc., 1043 Kiel Court, Sunnyvale, CA 94086
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 79
The
HqIIsoF
the Leprechaun King
16K cassette 24K disk
by Keith Evans and Ted Adkinson
Alas! The Leprechaun King has awakened from
his long slumber, and he has taken all of the world's
gold. Every nation is bankrupt. The world's only
chance is Smiley, the famous gold miner. With his
dexterity and wit Smiley just might be able to re-
capture all of the gold, pick up the magic key, and
put the gold in a sanctuary. But unless he's careful,
the Leprechaun King will give him the Midas touch,
turning him intc:) a 24-carat gold tombstone.
The halls of the Leprechaun King is a maze-type
game which runs on an ATARI 400 or 800 with a
minimum of 16K (Cassette based) or 24K (Disk
based) and one joystick. When the game begins take
some time to notice where everything is positioned.
Smiley is in the upper middle of the screen and the
Leprechaun King is in the upper right hand corner.
Throughout the maze there are pots of gold. To
collect one, just touch it. If you look in the lower
right corner, you will see the key surrounded by
walls. Collect about half of the gold and the key will
move to the center of the maze. After Smiley gets the
key and all of the gold, he goes to the sanctuary
chamber at the far lower right corner directly to the
left of the cross. Push the trigger button and a section
of the wall will disappear. This is the entrance to the
sanctuary where Smiley has to store the gold.
Deposit gold by simply touching the cross.
Some other important parts of this game are gold
tombstones. When Smiley loses a life, a tombstone
appears as a resting place for all of the gold he was
carrying. A new Smiley has to touch the tombstone
to collect the gold that the old Smiley was carrying.
In this game, you start with three lives. The game is
over when you use them all up. To see how many
lives you have left, look in the upper right or left
hand corner of the screen where vertical bars
indicate lives remaining (including the one currently
in use.)
An expert player might get to the third maze and
find it is totally different. Two clues about this maze
three: the key appears in the lower middle of the
screen, and the section of disappearing wall lies
directly below the cross. D
Here is the dc:)cumentation of the program.
Line # Description
1-10 Variable Initialization, title
120-372 Character set redefinition
395-507 Maze drawing, placing of the gold
510-624 Joystick reading, movement of Smiley
630-999 The Leprechaun's logic
1000-1120 Maze and character set data
1150-1154 Men left indicator
1500-1510 "Midas Touch" sound effects
2000-2020 Counts bags of gold taken, places key in
the maze if enough has been taken
2500 Draws tombstone, checks men left
2510-2570 Erases Smiley's trail
2575 Start's game over when all men are used
up
2610-2700 Puts the gold Smiley was carrying in a
tombstone when he is killed
3000-3050 Subroutine to flash maze
4000-4350 Actually moves monster
5000 Plays "Oh, when the saints. . .", clears
screen
6000-6007 Displays score at end of game
6010 Clears screen
7000-8030 Data for "Oh, when the saints. . ."
9000-9130 Subroutine to play "Oh, when the
saints. . . "
9150-9260 Plays "Good night, ladies. . ."
9270-9290 Data for "Good night, ladies. . ."
9300 Sound effects of gold being cashed in
10000- Color rotation subroutine
10020
1 CLR :X=ie:V=l:MX=17:MY=2:Xl=19:Ylrl
5 GRAPHICS 2+16:? tt6j" " : ? ttBj" "
6 ? «6;" THE HALLS OF THE":? »6;" L
EPRECHAN KIHG":? ttBj" '■
7 ? tt6;" created":? »6;" "
8 ? tt6;" b y"; ? »6 ;" "
'ns^'" Goiff«^ " = '"'' '
10 FOR ZZZ=1 TO 20:G0SUB 10600: NEXT ZZ
Z
120 POKE 106,PEEKtl06J-2
130 GRAPHICS 1+lB
150 A=PEEKC106J»256
PAGE 80
A.N.A.L.O.G. COMPUTING
ISSUE 10
190 5ET=PEEKfl0BJ
200 POKE 756, SET
228 FOR C=0 TO 7
230 POKE ft+C,0
240 NEKT C
250 FOR C=8 TO 63
260 READ CHAR
270 POKE A*C,CHAR
280 HEKT C
369 FOR C-64 TO 71:P0KE A+C,146:NEXT C
370 FOR C=72 TO 79:P0KE A+C,144:MEKT C
371 FOR C=80 TO 87:P0KE ft+C,128:MEXT C
372 FOR C=88 TO 95:READ CHAR:POKE A+C,
CHAR: NEXT C
395 IF TIM>=1 AND TIM<3 THEM RESTORE 1
040
396 IF TIM>=3 THEM RESTORE 7080
397 TIM=TIM+1
398 MM=2:IF TIM=1 OR TIM=5 THEM MM=1
400 READ GR1,GR2,GR3,GR4
410 IF GR1=-1 THEM GOTO 440
420 COLOR 35;PL0T GRl, GR2 : DRAWTO GR3,G
R4
430 GOTO 400
440 READ G1,G2
450 IF Gl=-1 THEM 500
460 COLOR 130:PL0T G1,G2
470 GOTO 440
500 IF TIM<4 THEM COLOR 35:PL0T 3,2:PL
OT 7,3:PL0T 6,3:PL0T 1,16:C0L0R 32:PL0
T 12,14
502 BAGS=0:DBAGS=0:GOLD=0:KEV=0:IF TIM
<4 THEM COLOR 37:PL0T 18,22
583 IF TIM<4 THEM RESTORE 1128
504 IF TIM>=4 THEM RESTORE 709O:LOCATE
10,11,ZZ:IF ZZ=32 THEM COLOR 37:PL0T
10,11
506 X=ie:Y=l:READ RMX:READ RMY:MH=RMX:
MY=RMV:X1=:10:V1=1
507 READ 5D0,SD01,SD,SD1,SC,SC1,K,E,AX
,AY,NB
510 X1=X:Y1=Y
515 POKE 711,251
516 POKE 77.0
520 IF STICK (OJ =15 THEM GOTO 580
530 J=STICKfO>
540 IF J=ll THEM X=K-1
550 IF J=7 THEM X=X+1
560 IF J=14 THEM Y=V-1
570 IF J=13 THEM Y=Y+1
580 LOCATE X,Y,I:IF 1=35 THEM X=X1:V=Y
1
590 IF 1=139 ThCM GOSUB 2000
595 IF 1=38 THEM G0LD=G0LD+DG0LD : BAGS=
DBAGS:FOR ZZ=-3e TO 3e:S0UMD 8,ABSCZZ)
,10,8:NEXT ZZlSOUND 8,0,0,0
600 IF 1=1 THEM GOSUB 1580: GOTO 2500
605 IF 1=37 THEM KEY=1 : ZZZ=60 : FOR ZZ=6
TO 40 STEP -l:SOUMD 0, ZZ, 10,8 : SOUMD
l,ZZZ,10,8:ZZZ=ZZZ-l!MEXT ZZ
606 SOUND 0,0,0,0:SOUND 1,0,0,0
615 IF JOlS THEM COLOR 32:PL0T K1,V1
620 COLOR 36: PLOT X,Y
622 IF K=5D0 AMD Y=5D01 AMD KEY=1 AND
STRI6C0)=O THEM COLOR 32:PL0T SD,SD1
623 IF K=5C AMD Y=SC1 THEM PGOLD=PGOLD
HHG0LD:C0LOR 39:PL0T SC,SC1 :X=AX :X1=X: Y
=AV:Y1=Y:GOLD=0:GOSUB 9300
624 IF BAGS<=MB AND 1=39 THEN 5000
630 MM=MM»-1
640 IF MM=1 THEN 510
650 LOCATE MK-1,MY,D1
660 LOCATE MX.MY-1,D2
670 LOCATE HX+1,HY,D3
680 LOCATE MX,MY+1,D4
690 IF XOMX and YOMY THEM 758
700 IF X=MX AMD MY>Y THEM FD=2:FD1=0
710 IF K=HX AMD MY<V THEN FD=4:FD1=0
720 IF Y=MY AND MX>X THEN FD=1:FD1=0
730 IF Y=MY AND MX<K THEM FD=3:FD1=0
740 GOTO 790
750 IF MM<X THEM FD=3
768 IF MX>K THEN FD=1
770 IF MY<Y THEN FD1=4
780 IF MY>Y THEN FD1=2
790 REH
795 IF FDIOO THEN 900
800 IF FD=4 AND D4<>35 THEN RD=4:G0T0
1150
818 IF FD=3 AND D3<>35 THEN RD=3:G0T0
1150
820 IF FD=2 AND D2<>35 THEN RD=2:G0T0
1150
830 IF FD=1 AND Dl<>35 THEN HD=1:60T0
1150
840 RD=INTCRMD(0)»4)+1
850 IF RD=1 AMD Dl=35 THEM 840
860 IF RD=2 AND D2=35 THEM 840
870 IF RD=3 AND D3=35 THEM 840
880 IF RD=4 AND D4=35 THEN 840
890 GOTO 1150
900 WAYS=0:IF FD=1 AND Dl<>35 THEN WAY
5=MAYS*1:M1=1
902 IF FD=2 AND D2<>35 THEM HAYS=WAYS+
1:H2=1
904 IF FD=3 AND D3<>35 THEM MAYS=MAYS4
l:M3=l
906 IF FD=4 AMD D4<>35 THEM MAYS=WAYS+
1:M4=1
908 IF FD1=1 AND Dl<>35 THEN WAYS=MAYS
+l:Wll=l
910 IF FD1=2 AND D2<>35 THEN WAYS=MAYS
+l:M22=l
912 IF FD1=3 AND D3035 THEN WAY5=HAYS
+l:W33=l
914 IF FD1=4 AND D4<>35 THEN WAYS=WAYS
+1:W44=1
916 IF WAYS=2 THEN 4000
918 IF Ul=l THEN RD=1
920 IF W2=l THEN RD=2
922 IF H3=l THEN RD=3
924 IF M4=l THEN RD=4
925 GOTO 4070
926 GOTO 1150
999 GOTO 510
1000 DATA 170,84,124,170,146,254,40,10
8
1010 DATA 126,60,66,223,209,219,66,60
1020 DATA 170,85,170,85,170,85,170,85
1030 DATA 60,126,219,255,189,195,126,6
1035 DATA 0,0,7,253,85,87,0,0
1037 DATA 28,54,119,65,119,119,119,127
1038 DATA 24,24,126,126,24,24,24,24
1039 DATA 31,35,69,249,137,138,140,248
1040 DATA 13,13,14,13,2,14,4,14,5,15,4
,15,5,16,8,16,15,15,16,15,13,16^14,16,
2,18,5,18,7,18,9,18,15,18,17,18
1041 DATA 1,0,18,0
1050 DATA 2,19,3,19,7,19,9,19,11,19,13
,19,5,20,7,20,16,20,18,20,2,21,3,21,5,
21,7,21,9,21,14,21,2,22,3,22
1060 DATA 1,1,1,5,18,1,18,7,9,1,9,4,16
,6,16,8,18,12,18,16,16,14,16,17,16,20,
16,22,13,10,13,11,13,17,13,18
1070 DATA 9,9,9,10,8,13,8,14,3,16,3,17
,0,0,0,23,0,23,19,23,19,23,19,0,3,1,9,
1,11,1,16,1,11,2,16,2,11,4,16,4
1080 DATA 4,6,9,6,3,3,5,3,6,4,7,4,3,5,
4,5,11,5,12,5,14,6,16,6,11,7,12,7,2,8,
6,8,8,8,9,8,11,8,14,8,5,9,6,9
1090 DATA 11,9,13,9,16,9,17,9,1,10,3,1
0,6,10,7,10,15,10,17,10,6,11,7,11,9,11
,11,11,2,12,3,12,17,12,18,12,5,13,6,13
1095 DATA 10,13,16,17,11,13,11,17,-1,0
,0,0
1100 DATA 4,2,5,5,13,7,4,9,8,9,12,10,1
8,11,15,12,3,13,9,13,5,14,13,14,12,15,
4,16,15,17,6,18,4,21,12,22,15,20
1110 DATA 2,6,-1,0
1120 DATA 17,2,15,22,16,22,18,22,9,12,
17 22 -19
1150 IF LI=e THEM COLOR 8:PL0T 19,0:PL
OT 0,0
1151 IF LI=-1 THEN COLOR 9:PL0T 19,0:P
LOT 0,0
1152 IF H=-2 THEN COLOR 10:PL0T 19,0:
PLOT 0,0
1154 GOTO 4110
1500 COUNT=8O0:FOR ZZ=20 TO STEP -1;
SOUND O.COUNT. 10, ZZ: SOUND l.COUNT+CZZK
993,10,ZZ:C0UNT=C0UMT-ie:MEKT ZZ
1510 SOUND 0,0,0,0:SOUND 1, 0,0,0 : RETUR
2000 BAGS=BAGS-1 : GOLD=GOLD+INT CRND COJ*
180)+l:DBAGS=DBAGS-l
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 81
2885 FOR ZZ=2e TO 8 STEP -1:S0UHD 8,20
.10,ZZ:I«EKT ZZ:SOUND 0,8.0,8
ioie IF DBftGS=-10 OR BAG5=-18 THEM COL
OR 37:PL0T K,E:COLOR 39!PL0T 5C,5C1
2820 RETURN
2580 COLOR 38:PL0T K,V:REM :LI=LI-1:IF
LI=-3 THEN G05UB 915e:G0SUB 6808:G0T0
2578
2510 LOCATE K,Y,ZZ:IF ZZ=36 THEN COLOR
32 ".PLOT K,Y
2520 LOCATE K+1,V,ZZ:IF ZZ=36 THEN COL
OR 32:PL0T K+1,Y
2530 LOCATE K-1,V,ZZ:IF ZZ=36 THEN COL
OR 32:PL0T K-i,V
2540 LOCATE X,V-1,ZZ:IF ZZr36 THEN COL
OR 32:PL0T X,Y-1
2550 LOCATE K,Y*1,ZZ:IF ZZ=36 THEN COL
OR 32;PL0T X,Y+1
2555 LI=LI-l:IF LI=-3 THEN GOSUB 9150:
G05UB 6888 -.GOTO 2578
2568 COLOR 38:PL0T K,Y
2578 X=18 : Y=l : X1=X : V1=Y ; HX=17 : MV=2 : OMX
=MX:OMV=MY
2572 D=32
2575 IF LI=-3 THEN LI=:0:GOTO 395
2618 FOR FN=e TO 5eO:NEXT FN
2617 DGOLD=GOLD : G0LD=8 : X=18 : Y=l : Xl=i8 :
Yl=l
2628 MX=RMX:HY=RMV
2638 D=32
2788 GOTO 503
3888 FOR C0UNT=8 TO 5
3818 SETCOLOR 8,8,8
3815 FOR ZZ=1 TO 5B!NEXT ZZ
3028 SETCOLOR 8,2,8
3825 FOR ZZ=1 TO S8:NEXT ZZ
3838 NEXT COUNT
3048 SETCOLOR 8,2,8
3858 RETURN
4808 RM=INT(RND(8}«2)+1
4818 IF RH=1 THEN 1118
4028 IF Ml=l THEN RD=1
4838 IF M2=l THEN RD=2
4848 IF M3=l THEN RD=3
4858 IF H4=l THEN RD=4
4068 GOTO 1158
4878 IF Hll=l THEN RD=1
4888 IF M22=l THEN RD=2
4898 IF M33=l THEN RD=3
4188 IF M44=l THEN RD=4
4118 IF RD=8 THEN 4388
4128 IF RD=1 THEN MH=MX-1
4138 IF RD=2 THEN MY=HV-1
4148 IF RD=3 THEN MX=HX+1
4158 IF RD=4 THEN MY=MV*1
4155 LOCATE OMX, OMV, ZZ : IF ZZ=36 OR ZZ=
39 THEN 4162
4168 COLOR D:PLOT OMX,OMY
4162 0=32
4165 LOCATE MX,MY,D:IF D=36 THEN GOSUB
15e8:G0T0 2580
4178 COLOR l:PLOT MX, MY
4175 0MX=NX:OMY=MY
4180 FD=8 : FD1=8 : RD=e : Dl=8 : D2=8 : D3=8 : D4
=e:MAYS=8:RD=e
4198 Hl=8 : H2=e : H3=8 : W4=8 : Hll=8 : H22=8 : H
33=8:U44=8
4288 GOTO 510
4388 RD=INT(RND(8}«4)+1
4318 IF RD=1 AND Dl=35 THEN 4388
4328 IF RD=2 AND l>2=35 THEN 4388
4338 IF RD=3 AND 03=35 THEN 4388
4348 IF RD=4 AND D4=35 THEN 4388
4356 GOTO 4120
5888 GOSUB 38e8:G0SUB 9888:G0SUB 6888:
TIM=TIM+l:GOTO 395
6888 COLOR 32 : Cl=8 : C2=8 : IF LI<>-3 THEN
GOTO 6885
6881 IF LI=-3 THEN GOSUB 6818JP0KE 756
,224:P0SITI0N 8,5:? »6;" QSiiaS "JP
GOLD
6882 POSITION 4,18:? tt6;"push trigger"
:IF LI=-3 THEN TIM=8
6883 SETCOLOR 1,12,18:IF STRIGCe>=8 TH
EN 6885
6884 FOR ZZ=1 TO 58: NEXT ZZ: SETCOLOR 1
,8,e:F8R ZZ=1 TO 58:NEXT ZZlGOTO 6883
6885 RESTORE 1840: IF LI=-3 THEN PGOLD=
8
6887 COLOR 32: GOSUB 6818: POKE 756, SET:
RETURN
6010 FOR C1=0 TO 23: PLOT e,Cl:DRAHTO 1
9,Cl:NEXT Cl:RETURN
7880 DATA 8,8,19,8,19,8,19,23,19,23,8,
23,8,23,8,8,3,3,5,3,5,2,5,2,9,1,11,1,1
4,3,16,3,14,2,14,2
7810 DATA 9,4,11,6,9,6,11,4,16,5,14,5,
14,6,14,6,9,18,11,18,11,18,11,12,11,12
,9,12,9,12,9,18,3,5,5,5,5,6,5,6
7820 DATA 3,9,3,10,5,9,5,10,14,9,14,18
.16.9,16,18,3,12,3,13,5,12,5,13,14,12,
14,13,16,12,16,13
7838 DATA 18,15,18,17,9,16,11,16,3,17,
5,17,14,17,16,17,3,19,5,19,14,19,16,19
8 28 9 28
7848 DATA 11,28,12,28,8,22,9,22,11,22,
12,22,2,22,2,23,17,22,17,23,12,21,12,2
1,8,21,8,21,3,19,3,28
7858 DATA 3,16,3,17,16,16,16,17,16,19,
16,28,2,10,3,18,6,18,5,18,2,12,3,12,6,
12,5,12,13,18,14,10
7868 DATA 16,18,17,18,13,12,14,12,17,1
2 17 12 ""1 ~1
7870 'data 4,2,15,2,4,6,15,6,18,4,18,6,
9,5,11,5,4,9,15,9,2,11,4,11,6,11,13,11
,15,11,17,11,4,13,15,13
7888 DATA 9,15,11,15,9,17,11,17,4,16,1
5,16,4,28,15,28,9,21,11,21,4,2,-1
7898 DATA 18,21,18,13,18,12,18,11,18,2
2,18,12,-28
8888 DATA 121,6,96,6,91,6,81,1,8,8,121
,8,96,8,91,8,81,1
8818 DATA 8,8,121,8,96,8,91,8,81,2,96,
2,121,2,96,2,188,1
8820 DATA 8,8,96,8,96,8,108,8,121,2,12
1,6,96,2,81,4,81,4,91,2
8830 DATA 0,8,91,8,96,8,91,8,81,2,96,2
,108,4,108,4,121,1,-1
9800 RESTORE 8800
9818 READ PITCH
9028 IF PITCH=:-1 THEN 9130
9848 READ DURATION : DURATION=INT CSO/DUR
ATION)
9858 SOUND 8, PITCH, 18, 8
9860 IF PITCH=8 THEN 9888
9878 SOUND 1, PITCH+1, 18, 8
9888 FOR ZZ=1 TO DURATION :NEXT ZZ
9890 SOUND 0,0,0,8
9188 SOUND 1,0,8,8
9110 FOR ZZ=1 TO 5:HEXT ZZ
9128 GOTe 9810
9130 RETURN
9158 RESTORE 9270
9168 READ DURATION: IF DURATI0N=-1 THEN
RETURN
9170 DURATI0N=INTCDURATI0N«18)
9188 READ PITCH: IF PITCH=8 THEN 9208
9198 PITCH=PITCH«3
9208 SOUND e,PITCH,18,8
9218 SOUND 1, PITCH+1, 18, 8
9228 FOR ZZ=1 TO DURATION : NEXT ZZ
9230 SOUND 0,0,0,0
9240 SOUND 1,0,0,8
9258 FOR ZZ=1 TO 3: NEXT ZZ
9268 GOTO 9160
9278 DATA 2,47,2,60,1,81,3,68,2,47,2,6
8,1,53,3,53,2,47,2,60,1,45,2,45,1,45
9288 DATA 1,47,1,47,1,53,1,53,3,68,1,8
,1.5,47, .5,53,1,68,1,53,1,47,1,47.2,47
,1,53,1,53,2,53
9298 DATA 1, 47, 1, 48, 2, 48, 1 . 5, 47, . 5, 53,
1,68,1,53,1,47,1,47,2,47,1,53,1,53,1,4
7,1,53,3,68,1,8,-1
9388 FOR ZZZ=1 TO 3: FOR ZZ=20 TO 8 STE
P -l:SOUND e,28,18,ZZ:NEXT ZZ:SOUND 8,
8,8,8:NEXT ZZZ:RETURN
18888 F8R Z=l TO 3
10818 A=PEEKf7881
18028 PBKE 708,PEEKC711) :PeKE 711, PEEK
C718}:P0KE 710,PEEKC789> :POKE 7e9,A:NE
XT Z:FOR 8=1 TO 18:NEXT B:RETURN
PAGE 82
A.N.A.L.O.G. COMPUTING
ISSUE 10
(see DrCHECK 2, p. 26)
1 OftTft 0^703,82,669,687,337,397,3:7,195
,539,211,426,208,786,730,6091
25fl IXJT/1 162,99,303,742,713,712,721,64
2,282,323,121,875,275,455,697,7122
430 DflTft 704,833,696,201,728,445,337,5
1,429,826,926,151,238,959,36,7560
530 DftTft 918,74,785,93,91,205,828,681,
484,731,983,17,973,483,857,8203
624 DftTfl 488,689,493,829,812,831,814,1
82,910,911,917,918,746,924,929,11393
770 DftTft 167,170,113,918,228,224,220,2
16 , 977 , 846 , 853, 868, 867 , 983 , 660 , 8302
982 DflTft 660,667,674,27,30,40,50,918,8
10,807,811,815,974,970,746,8999
1080 DOTfl 226,165,214,287,97,68,763,80
,750,137,418,548,616,647,412,5428
1895 DftTft 418,873,132,916,490,600,859,
724,251,119,657,327,491,783,339,7979
2510 DftTft 724,239,248,210,201,494,202,
783,213,871,731,517,774,208,903,7318
3800 DftTft 810,677,667,660,668,195,662,
788,842,933,0,5,18,15,719,7651
4870 DftTft 706,715,724,726,908,549,557,
551,559,311,753,204,808,251,772,9094
4180 DftTft 625,95,887,819,607,611,615,6
19,730,1,991,985,398,561,836,9380
6805 DftTft 105,951,595,618,605,393,695,
974,457,283,942,188,257,974,783,8820
8820 DftTft 596,86,199,110,118,997,893,4
00,342,698,223,218,588,743,801,7012
9150 DftTft 226,485,338,695,558,894,342,
698,223,225,593,761,514,393,665,7610
9300 DftTft 852,309,60,626,1847
40 SET=PEEKtl06J :REM THIS IS WHERE THE
CHflRftCTERS WILL GO IN TERMS OF PftGES
OF MEMORY
50 REftD MflLUEMF UftLUE = -l THEN 95:REM
REftD IM PftRT OF ft CHftRflCTER
60 POKE CHBft5E+C,UftLUE:REM PUT THE HUM
BER IN HEMORV
70 C=C*1:G0T0 50
75 REM DftTft FOR SPACE
80 DftTft 0,0,0,0,0,0,0,0
85 REM DftTft FOR SMILEY
90 DftTft 60,126,219,255,189,195,126,60,
95 POKE 756, SET: REM TELL THE COMPUTER
WHERE THE NEW CHftRflCTER SET IS LOCftTED
100 COLOR liPLOT 5, 5: REM PUTS SMILEV
H SCREEN ftT 5,5
118 GOTO 110: REM ENDLESS LOOP FOR DI5P
LftV PURPOSES
To determine the number for the COLOR
statement in line 100: First, Smiley is to he green.
Color register number 1 normally contains green so
it is used. Smiley has been defined in the program
above as the second character in the redefined set.
(The space was the first.)
With these pieces of information 1 looked up the
number in a chart, like the following one:
For those interested, here are some of the
techniciues used in this program. First is "redefined
character sets", which when carefully laid out can
simulate a high resolution graphics screen, but
requiring much less memory. They are fairly easy to
design. Each character can be one of four different
colors. Step one is to design some characters. Here's
Smiley as an example:
|l28 64l32|l6|8 U Iz 1
■■
-
™
r
™
^
^
■■
mm
^
^
^
^
n
^
r
^
_■■■■_
4
8
-.
I
6
3
2
6
LF^Pl
4
8
^
1
6
■V
3
2
6
4
.
L
2
6
Ph^^HiP
+
2
^.
8
^
1
6
4
fi
4
1
2
8
.,
1
9
,
2
+
U
-t
8
1
6
,
2
4
f)
;,
..
1
?.
a
■>
5
5
+
A
a
-f
I
6
^
3
2
1
2
8
1
8
9
*
2
Ci
4
1
2
8
_
9
5
irhtK^FT
,
^
+
8
+
I
6
+■
3
2
6
4
1
2
6
\ r^^T
4
_
8
1
6
3
2
=
b
Make an 8 by 8 grid; mark the blocks to be filled
in, then add up the corresponding numbers to
determine its POKE value.
Following is a program which defines a space, and
a Smiley character and then prints out a picture of
Smiley on the screen. The number used after the
COLOR statement in line 100 is explained later.
10 GRftPHICS 2+16 :REM STftRT OUT WITH ft
GRAPHICS STftTEMEHT
20 POKE 106, PEEK (106) -2: REM SET ASIDE
2 PftGES OF MEMORY FOR THE CHftRftCTER SE
T
30 CHB0SE=PEEK(106]M256:REM THIS IS WH
ERE THE CHftRftCTER SET WILL BE POKED IN
TO MEMORY
COLOR REGISTER = 32, 33 through 95
COLOR REGISTER 1 = 0, 1 through 124, (125*),
126, 127
COLOR REGISTER 2 = 160, 161 through 223
COLOR REGISTER 3 = 128, 129 through 154,
(155*), 156 through 255
* 155 selects the same thing as 32. 125 has no effect.
Smiley 's color is set by color register 1 so look in
the second row. Since he is the second character use
the 2nd number in the 2nd row, which is 1. As
another example, if Smiley were to be controlled by
color register 2 the correct number would be 161.
Try 161 in the example program above and see what
happens.
Before you get too carried away, remember that
the example program will not allow text to be
displayed on the screen. To switch back to text only
POKE 756, 224.
If you are really interested in redefining a complete
character set there are several software packages out
which make it easier.
Another section of the Halls of the Leprechaun
King which is interesting is its color rotation
subroutine (10000-10020). Adding this to a
program's title makes it very colorful. Here is how it
works. Memory locations 708-711 contain the
numbers which determine the colors which will be
displayed from each color register. The subroutine
rotates the colors from one register to another so
that everything on the screen is flashes through each
color. Try it in one of your programs.
Good Luck! And keep on coding! D
"... faitnfuUy captures
the look, spiiit ana
play of aicaae
'Spaci cJnvaaeis
-John Anderson,
Creative Computing
"i^ll a'le excellent veisions
of the aicaae games
with, supe'i giJ^nlcs
ana sound.
-Mark I '
A.N.A.1:
-Gary and Marcia Rose
Imiaders ^
vVe a\e ^belious <^Dout yJa\ Carries I
V
->
The definitive, super-fast multiple skill
shoot-out game for Atari® 400/800™
with superb ,
arcade-type
realism I
Retail price for 16K cassette or diski ^39.95
One or two player game.
Coming soon. Venus Voyager, Time Warp, and
more programs by tine Englisli sottware
designers and authors,
The English Software Company
PO, BOX 3185 • REDONDO BEACH, CALIFORNIA 90277
(213)372-3440
Direct orders welcome.
'i^ «f-
ENGLISH SO,
© 1982, English Software Company • Atari is a trademark of Atari, Inc. • English Software is not related to Atari, Im
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 85
A LISP TUTORIAL
by Ken Litkowski
LISP is an old language, dating to the dark ages of
computers (pre 1960), still hardly standardized, yet
still making a contribution to the evolution of new
languages. Its influence will continue to be felt in the
years to come. And now it is emerging from the
hallowed halls of academe and made available to us
lesser mortals. It is a language or research; its
availability on personal computers will allow anyone
so inclined to participate in the future.
LISP is primarily a symbol manipulation language
used today in many areas of the ever-expanding field
of artificial intelligence. Programs in LISP can do
calculus problems (on a level equivalent to college
freshmen), prove mathematical theorems, solve
geometric analogy problems, provide natural
language interfaces to data base systems for limited
domains such as moon rocks and inventory systems,
and have been used for word processing, symbolic
mathematics, and writing operating systems, utility
programs, compilers, and interpreters for personal
computers. These applications have been developed
on large computers, but there is no reason why
LISP's capabilities cannot be harnessed on a personal
computer. (See the review of a LISP implementation
for the ATARI in A.N.A.L.O.G. #8, parricularly
noting its limitations, which effect the speed of
flexibility of LISP programs.) In this tutorial, I will
attempt to convey the power, beauty, and
sophistication of this language, while trying to
demystify the aura which surrounds artificial
intelligence.
The Basics
LISP is essentially a functional language, meaning
that its capabilities are implemented through
functions (comparable to the functions in
FORTRAN and analogous to the subroutines in
BASIC). A function in LISP is always enclosed in
parentheses, with the function name given first,
followed by its arguments (or values to be given to
the function, if any). For example, (+2 5) will return
the value 7 . This prefix notation is important, since it
ensures that the system always knows where to look
for a function name. Other functions can also be
used as arguments, nested to any depth. Listing 1
shows several examples of mathematical functions.
Arguments for the more complex examples are
discernible by balancing the parentheses.
As is evident from the examples in Listing 1,
parentheses proliferate in LISP. This brings us to
another main characteristic of LISP, namely, that it is
a list processing language. The fundamental entities
in LISP are called atoms (roughly corresponding to
veriable names in most other languages). Atoms may
be symbolic, such as +, SQRT, x, or 3x@H#, or
numeric, such as 4 or 5.2374. Some symbolic atoms
are given special meaning when they are used as
function names (recognized as such either by the
system or through user definition). Other symbolic
atoms may be given values or properties. Atoms may
be grouped together into lists, which can then be
grouped into higher-level lists, and so on. Lists are
always enclosed in parentheses. The functions in
Listing 1 are nothing more than lists, some
containing sublists, and all of them distinguished in
that their first elements are symbolic atoms
recognized as function names which cause a
computation to be performed.
LISTING 1.
(t 3.14 1.27)
User input
4.41
;L1SP response
<» 4.13 3)
■User input
12.39
;LISP response
(.' 327 288)
User input
! .635
;LISP response
(» (+ 3 4 ) (SUB 13 5)!
User input
56
jLIS^ response
(SQRT 1.4.541)
|User input
1.21
;LISP response
Atoms and lists collectively are called symbolic
expressions, or s-expressions. Their manipulation is
the essence of LISP. As mentioned above, symbolic
atoms may be given values; these values do not have
to be numbers; they can be other symbolic atoms,
lists, and even lists which are also functions. This
makes LISP a symbolic language in addition to being
a functional and list processing language.
EVAL and QUOTE
The ability to give atoms values which are other
atoms, lists, or functions is what gives LISP its
power. Understanding how this is done is therefore
of primary importance. There is a simple function
called SETQ, which gives a symbolic atom its value.
Thus, we can write (SETQ^X 3); this is equivalent to
the BASIC or FORTRAN assignment statement
X=3. We can also write (SETQ^X 'Y) or (SETQ,X
'(A B C) ). These give X the value Y or (A B C),
respectively, but they do so in a peculiar manner.
First note that these values were preceded by a quote
PAGE 86
A.N.A.L.O.G. COMPUTING
ISSUE 10
mark. This quote mark inhibited what is known in
LISP as evaluation.
Whenever LISP encounters an atom or list, it
attempts to evaluate it. That is, it will substitute the
value of the atom or the list for the atom or list itself.
In the case of the Y above, LISP would substitute the
value of Y and make that value the value of X, if we
had not inhibited evaluation with the quote mark or
with the equivalent QUOTE function. In the case of
the list (A B C), LISP would have attempted to
determine its value by assuming that it is a function
with name A and arguments B and C. Not finding a
function with such a name would have caused an
error. The quote mark inhibits such evaluation. In
both cases, the QUOTE function returns the literal
expression which follows it. This enables X to be
given the literal values intended.
In the examples of Listing 1, where a function was
given as an argument to another function, the
absence of a quote mark permitted the evaluation of
the function. The value of the function thus became
the value of the first function's argument.
Sometimes, however, it is necessary to use the
opposite of the QUOTE function and let a symbolic
atom go through two (or more) stages of evaluation.
This is accomplished with the EVAL function.
Listing 2 shows an example of this, where the atom A
is given the value B and the atom B is given the value
C. When A is entered, LISP returns its value B;
similarly, B returns the value C. But, typing (EVAL
A) returns the value C. In creating the listings for this
article, I set a variable to the lines marked "User
input" and then EVALuated that variable to get the
LISP response. In most of the listings, this resulted in
the evaluation of a function.
functions; note again that the QUOTE function was
used to inhibit evaluation.
LISTING 2.
(SETQ A (QUOTE B))
B
(SETQ B (QUOTE 0)
C
A
B
B
C
(B/AL A)
C
I User input
;L1SP response
;User input
jLISP response
;User input
;LISP response
;User input
jLISP response
jUser input
;L1SP response
List Processing Functions
Since LISP is a list processing language, it has
special functions for manipulating them. The most
basic functions are CAR (for Contents of Address
Register) and CDR (for Contents of Decrement
Register), where both acronyms were taken from the
structure of the IBM 7090. CAR returns as its value
the first s-expression of the list, while CDR returns
the list that remains after the first element is
removed. Listing 3 contains some examples of these
LISTING 3.
(CAR (QUOTE (A B C)))
;User input
A
■,LI3P response
(CDR (QUOTE (A BO))
jUser input
(B C)
jLISP response
(CAR (CDR (QUOTE (A B C))))
lUser input
B
;LISP response
(CDR (COR (QUOTE (A B C))))
jUser input
(C)
;LI3P response
(CAR (QUOTE ((A B) C)))
;User input
(A B)
;LISP response
Three other basic functions are APPEND, LIST,
and CONS. APPEND merges all the elements of
each of its argument lists into one list, while LIST
simply forms its arguments into a single list. CONS
takes its first argument, any s-expression, and makes
it the first element of the list which is its second
argument. Listing 4 shows several examples of their
use; in these cases, X has been given a value before
use by the demonstrated function; no quote mark
has been used in order to show what happens when
an atom is evaluated prior to its use by a function.
Several other list processing functions are usually
available in any implementation of LISP.
LISTING 4.
(SETQ X (QUOTE (A B))>
(A B)
(APPEW X X)
(ABA B)
(LIST X X)
((A B) (A B))
(CONS X X)
((A 6) A B)
|IJser input
;LISP response
;User input
;L1SP response
;User input
|LISP response
jUser input
(LISP response
Lists may have any degree of complexity; by giving
some lists a certain degree of regularity, they can be
used in special ways by using system or user defined
functions. Listing 5 shows one type of list 1 have
created for analyzing the semantic structure of
dictionary definitions. I have developed special
functions to access particular parts of such lists when
I wish to perform specific analyses. This list is known
as a property list, in this case associated with the
atom IF. An atom may have any number of
properties, each of which in turn may have values.
LISTING 5.
(PROPERTY LIST FOR THE DEFINITION OF MF")
((CODE (ID)
(TOKEN
(IF)
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 87
(«)EFS (!8»
(DBFS
(d in the event that))
(C2 in case))
((3 allowing, concedino, or granting that ))
«4 SUPPOSING))
((5 so long as))
(|',4 on condition that))
((7 WTHER))
<<8 USA6EN0TE —used to introduce an
exclamation expressing a wish ))
(<9 euen though))
((18 although perhaps))
Predicate Functions
LISP is a logical language in addition to being a
functional, symbolic, and list processing language.
LISP has two special atoms, T and NIL, roughly
corresponding to 'true' and 'false', respectively. If
one were to enter an atom, thus requesting its value,
and it had none, the system would respond NIL. If it
had a value, that value would be returned. LISP has
several functions which ask questions which demand
an answer of T or NIL. Among these are ATOM
(which asks whether its argument is an atom),
EQUAL (which asks whether its two arguments are
equal in value), NULL (which asks whether its
argument is the null set), MEMBER (which asks
whether its first argument, an s-expression, is an
element of the second argument, a list), and the
logical connectives AND, OR and NOT (which act
in the usual way). Several other predicate functions
are usually available, and others are easily created.
Defining Functions
Each LISP implementation has a special function
for defining new functions. In the system which I
use, this function is called DEFINEQ,. The
arguments of this function are the function name,
the parameters of the function being defined, and the
body of the function which articulates what the
function is to do when it is called. The body of a
function is much easier to comprehend for anyone
with programming experience. Usually, the body of
a function will contain a series of s-expressions
combined in the form desired. After the function is
defined, it can be used by itself or as part of another
function. When used, the function always returns a
value (which may be just about anything).
One important type of s-expression which is
frequently used in functions is the COND function,
which makes use of the predicate functions. COND
can have any number of arguments, each of which is
a conditional expression called a clause. In each
clause, the first s-expression is a predicate function;
if this function has the value T (for true), then any
expressions which follow are executed (or evaluated,
to be a purist). The last such expression is returned
as the value of COND. LISP examines each clause of
a COND in turn, until it finds one whose first
expression evaluates to T (actually, to anything that
is nonNIL), and then evaluates everything else in the
clause. Listing 6 is a function like CONS, except that
it will add an item to a list only if it is not already a
member of the list. The first clause of the COND
asks whether the item is already in the list and, if so,
returns the list without the item being added. If the
item is not on the list, COND will bypass the first
clause, going to the second. Since we have made the
first element of the second clause T, we have
guaranteed that the consequents of this clause will
always be executed if the first clause is not successful.
In this case, the item not on the list will be added.
The two examples in the listing show what happens
to the list L when using this function.
LISTING 6.
(DEFINEQ UNIQUECmS
(LAMBDA (ATM LST)
(GOND ((MEMBER ATM LST)
LST)
(T (CONS ATM LST))))
)
(SETQ L (QUOTE (A B)))
(A B)
;Usep input
;LISP response
(UNIQIECONS (QUOTE D) L) |User input
(DA B)
(miQUE(a)^S (QUOTE A) L)
(A B)
jLISP response
;User input
jLISP response
Conceivably, a function can be written in only one
line, but typically several steps are performed. This
requires the use of the function PROG which can
have an indefinite number of arguments, each of
which is an s-expression. Each argument is evaluated
in turn and the last such argument is the value of the
function. The first argument of PROG is a list of the
variables to be used in the remainder of the
arguments; when this function is entered, all such
variables are initially given the value NIL. When one
of the arguments in PROG is a symbolic atom, it is
construed as a label which marks a place in the s-
expressions to which a transfer can be made. This is
done using the GO function. Listing 7 is a function
to compute the factorial of the number N. This
function also shows another example of how the
COND function can be used. In this example,
COND has only one clause; as long as the first
expression is not T, the second expression (the
function RETURN, used to exit and return a value
from the PROG function) will not be evaluated.
LISTI^B 7.
(DEFINEQ FACTORIAL-1
(LAFCTA (N)
(PROG (I J)
(STQ I N)
(SFTQ J 1)
(SETQ J I)
LOOP
(COND ((EQ I 9)
PAGE 88
A.N.A.L.O.G. COMPUTING
ISSUE 10
(RETURf^ J)))
(SETQ J (« J I))
(SETQ I <SUB ID)
(GO LMP)))
(FftCT(KIAL-l 6)
72B
;User input
;L1SP response
The factorial function can also be defined
recursively, since LISP is also a recursive language,
meaning that essential aspects of the language can be
defined in terms of themselves. Thus, an s-
expression can be defined as either an atom or as a
left parenthesis followed by a sequence of s-
expressions separated by blanks and followed by a
right parenthesis. To define a function recursively
means to use the function as part of the body of the
function itself. Such a function is self-referential.
Listing 8 is the factorial function written recursively.
Note that every use of this function terminates when
N equals 0, and returns the number 1, the second
expression of the first clause of the COND function.
LISTING 8.
"mapping functions", with which a function is
applied iteratively to a list of arguments. Listing 9
contains a definition of the function MAPCAR,
which applies its function argument to the CAR of a
list. As can be seen, this function is also written
recursively. It builds a list, one element at a time
(using the CONS function), starting at the last
element. This is done by recursive calls to MAPCAR
until its second argument is the empty list (the first
clause of the COND function). The function is
primed to perform the CONSing operation for each
element of the list, but makes sure it has reached the
end of the list before it actually begins to form the list
which will be the output. The second part of Listing
9 shows an example of this function's use; in this
case, the first argument is the function ATOM
(which takes a single argument and asks if it is an
atom or a list, returning T if it is an atom). The
second argument of MAPCAR is the list of elements
we wish to test. The value returned by this example is
a list showing which elements of the list are atoms
and which are not.
LISTING 9.
(DEFINEQ FACTORIAL-2
(bWBOrt (N)
<COND ((EQN 9)
I)
(T <.i N (FACTORIAL-2 (SI© N 1))))))
)
(FftCTCWIAL-2 6)
728
;User input
;LISP response
Functions with Function Arguments
An important capability in LISP is the ability to
use functions as arguments of other functions. For
example, in developing a parser for analyzing English
sentences, one first defines a series of functions
known as an interpreter to handle the analysis. These
functions in effect constitute an entire new
programming language, defined by the user and then
used to write the actual parsing programs. In LISP
the ability to create such special programming
languages arises from functions which can take
function arguments. EVAL and QUOTE are two
such functions; APPLY (or APPLY* in my system) is
another such function.
APPLY takes two arguments, a function name and
a list; the list contains the arguments necessary for
the given function. APPLY then applies the function
to the list and returns the value as if the function had
been executed directly with its list of arguments. The
significance of this function is that it allows
"computed" function calls. At first glance, the value
of this function may seem obscure, but it provides an
ability to write programs which can write programs
and then execute them.
One way APPLY can be used is in what called
(DEFINEQ MAPCAR
(LAHBOA (FN X)
(COND ((EQ X)
NIL)
a (CONS (APPLY* FN (CAR X))
(MAPCAR FN
(CDR X))))))
)
(MAPCAR (QUOTE ATOM) (QUOTE (A B (A B) C (D E))));User i
nput
(T T NIL T NIL)
esponse
;LISP r
Pattern Matching
Using the material described thus far, it is now
possible to present an example of a very powerful
LISP function. Listing 10 contains a function which
will determine if a list contains a pattern of a
specified form. Despite its apparent simplicity, it can
be used in quite imaginative ways to search for
patterns in an input stream. I will describe one such
way below after I have explained the function and
one example of its use.
LISTING 18.
(DEFINEQ MATCH
(LAfffiDA (P D)
(COND ((AND (EQ P)
(EQ D))
T)
((OR (EQ P)
(EQ D))
NIL)
((OR (EQ (CAR P) (QUOTE »)
(EQ (CAR P) (CAR 0)))
(fWTCH (CDR P) (CDR D)))
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 89
T)
U.(m (EQ (ATQHCAR (CAR P)) (QUOTE »)
(MATCH (CDR P) (CDR D)j)
(SET (ATmCDR (CAR P)) (MR D)) T)
((EQ (CAR P) (QUOTE +))
(ODND amKU (CDR P) (CDR D))
T)
(T (fttTCH P (CDR D)))))
((EQ (ATOMCAR (CAR P)) (QUOTE +.))
(COND ((MATCH (CDR P) (COR D))
(SET (ATONCDR (CAR P)) (LIST (CAR D)3)
((MATCH P (COR D))
(SET (ATOHCDR (CAR P)) (CONS (CAR D) (E
m. (ATOHCDR (CAR P)))))
T)))))
)
The arguments of the function, P and D, are both
generally assumed to be lists, the first argument
defining the pattern we wish to test for and the
second argument the input we wish to test. The
function consists of one condition, containing
several clauses, and returns T if the pattern has been
matched and NIL if the pattern has not been
matched. The function is written recursively, so that
it calls itself many times; the final call returns a value
from one of the first two clauses in the condition
statement. The expression (EQ, P) asks if P is the
empty set; if so, its value is T The test in the first
clause asks whether the lists P and D are both empty,
i.e., have been exhausted at the same time, thus
indicating a successful match, causing T to be
returned. If they are not both empty, but one is, the
test in the second clause will be T and cause NIL to be
returned, since there is not total agreement between
the pattern and the input being tested.
There are two tests in the third clause (indicated
by the OR), the second of which asks if the first
elements of both lists are the same. The fist test asks
if the first element of the pattern is the symbol
which is a privileged special atom which can match
any atom. In other words, if the pattern has a , it does
not matter what the input has; it will always yield a
successful match. If either of these two conditions is
met, the function says OK for the first two elements
and asks if the rest of the two lists match (hence the
call (MATCH (CDR P) (CDR D) ) ). The fifth clause
of the condition involves another privileged symbol
+, which allows the pattern to match an arbitrary
number of atoms in the input. It does this as follows:
If the first element of the pattern is +, another
COND statement is posed, in which one of two tests
can be successful in order to return an overall value
of T. Either the remainders of P and D match or P
matches the remainder of D. The second possibility
is kind of tricky. Notice that we keep the list P, which
we know begins with the special symbol + (since that
was the test that got us into this situation); by
keeping the same list, when the call (MATCH P
(CDR D) ) is made, we will end up at this same test
on the next pass through the function. In effect, we
have ignored the first element of the input in
matching against the pattern. This will be made
clearer in the example below.
In the fourth and sixth clauses of the condition, we
are again testing for the presence of the special
symbols + and , but with a twist. In these cases, we
are testing to see if the symbols are actually part of
the atoms. For example, we could have the symbol
+L as part of the pattern. The function ATOMCAR
unpacks the symbol into the list (+L) and returns the
+ as its CAR. If the test of an atom shows that it has
one of these special symbols as its leading character,
the remainder of the clause then sets the value of the
following atom to the element or elements in the
input which matches the special symbols. This
allows the unspecified part of the input to be used as
the value of a variable, which can be used in any
desired manner. The example will demonstrate this.
LISTING 11.
(DEFINEQ DOCTOR
(LAMBDA NIL
(PROG (L MOTHER S)
(POKE 128 8)
(PRINT (QUOTE (SPEAK UP)))
imp
(SFTQ S (READ))
(OMD ((ATOM S)
(SETQ S (LIST S))))
(OHD ((HATCH (QUOTE (I di tWRRIEO +L)) 3)
(PRINT (APPEND (QUOTE (HOU LONB IWJE YOU BE
Eh< WORRIED)) L)))
((tiATCH (QUOTE (+ HOT^€R O) S)
(SETQ MOTHER T) (PRINT (QUOTE (TELL HE MORE
ABOUT YOUR FAMILY))))
((MATCH (QUOTE (+ CWPUTERS +)) S)
(PRINT (QIBTE (DO MACHINES FRIGHTEN YOU))))
((OR (hWTCH (QUOTE (NO)) S)
(WTCH (QUOTE (YES)) S))
(PRINT (QUOTE (PLKSE DO NOT BE SO SHORT WI
THME))))
(MOTHER (SETQ MOTHER NIL) (PRINT (QUOTE (EAR
LIER YOU SPOKE OF YOUR MOTHER))))
(T (PRINT (QUOTE (I AM SORRY OUR TIME IS UP)
)) (RETURf^ (QUOTE GOODBYE))))
(GO LOOP)))
)
The example using the matching function is shown
in Listing 11, which is a much simplified version of
the notorious ELIZA program written by Joseph
Weizenbaum in the early 1960s. It is notorious
because it simulates conversation between a
computer and a human that can be very beguiling. It
was so beguiling to Dr. Weizenbaum's secretary that
she asked him to leave because she felt she was
having an intimate conversation with a psychologist.
This incident, stemming from a simple program, set
him against many of the initiatives of artificial
intelligence. (See his book. Computer Thought and
Human Reason.)
The program in Listing 11 begins by asking the
human to initiate the conversation and sets this
input to the variable S. The main condition
statement of the function DOCTOR then attempts
PAGE 90
A.N.A.L.O.G. COMPUTING
ISSUE 10
to match key phrases against the input and then
prints output based on the particular match. The
second and third clauses of the condition look for
instances of the words MOTHER and
COMPUTERS, using the privileged symbol + to
ignore any of the surrounding input. Not that when
MOTHER is found in the input stream, the
consequent part of the condition clause sets the atom
MOTHER to T, so that if the rest of the conversation
becomes repetitive, the response returns to this
earlier reference in the fifth clause of the condition.
(A value for MOTHER of T will activate the fifth
clause.)
The first clause of the condition makes use of the
facility to set the value of a variable to part of the
input stream. If the input begins with the phrase "I
AM WORRIED", one can expect that the following
part of the input will begin with the word "about"
and then contain the object of the worry. The
program is designed to catch this regularity by setting
the variable L to the phrase beginning with "about"
and using it in responding to the human, thus giving
the illusion of intelligence. Finally, the last clause of
the condition, having exhausted its repertoire,
finishes its conversation. Since any number of
clauses may be added to a COND expression, the
sample program can be extended to cover a wide
range of apparent coversational complexity.
Extensions
The simplicity with which the pattern matching
function was written should give some idea of the
power of LISR With such a function alone, it is
possible to write simple programs like DOCTOR to
accomplish such things as theorem proving, solving
algebra word problems, differentiating complex
mathematical functions, accessing a data base with a
relatively free form input, developing chess playing
programs, and examining data (e.g., astronomical
data) for patterns. The power in LISP comes from
being able to write ever more complex functions in
terms of simpler functions, so that the user is
operating on a high level with all the details hidden at
a very deep level within the machine. In effect, LISP
allows one to create a high level language to handle
particular problem domains. A user can operate on
the problem domain without being concerned with
the details.
My particular interest lies in determining the
semantic relationships between the different
meanings of words, with the hope of eventually
incorporating semantic properties in English
language parsers. LISP enables me to conceptualize
the problems at a higher level. My first problem is to
analyze the regularities of dictionary definitions. To
do this, I must develop a parser which will handle the
peculiarities of dictionary definitions. I can build
such a parser by identifying patterns at the lowest
level, such as nouns, adjectives, and verbs. By
ascertaining the existence of patterns of particular
parts of speech, I can build more and more complex
parsers which will look for particular types of noun
or verb phrases. With a pattern matcher, I can first
determine if a particular definition fits an existing
pattern, and, if not, hypothesize a new pattern, which
I can easily add to the set of patterns for which I test.
When I wish to add a pattern to an existing parser,
I have to built program statements which can be
inserted into an existing program. Here again, LISP
comes with a ready-made capability. A program is
nothing more than a list, so to alter the program it is
only necessary to alter the list. This is simplified in
LISP since a program can be treated as a list. In fact,
to print the functions accompanying this article,
their definitions were given as arguments to another
function which printed them out in a pretty form, so
that the plethora of parentheses would not be
confusing. (This is know as prettyprinting.)
It is therefore possible in LISP to create a program
based on another program. I can use a pattern
matching program to look for particular patterns.
Using the COND expression, I can then build a list
which consists of program-like words. Using the
EVAL function, such a list can be transformed into a
program and executed. This is the power of LISP. D
Bibliography
LISP, RH. Winston and B.K.R Horn, Addison-
Wesley Publishing Co., Reading, Mass., 1981.
The Programmer's Introduction to LISP, W. D.
Maurer, American Elsevier Inc., New York, 1972.
The Little LISPer, D.R Friedman, Science
Research Associates, Inc., 1974.
Inter-LISP for the Atari Computer, Datasoft
Inc., Northridge, Cal., 1981.
tii fiFH CatiPHir.^ 10 GTTO OFMO
in niJftPHTcs to
48 RFM CHOMGP OOTfl TO CHONCF CO) OR-i
SO FOR CM-a TO 7:R€ftl> CU:POKE 705+CN.C
WiMEHT CM: DATA 6, 12, 23, 42, 53 , 62 ,73 84
68 C=0;5ETC0L0R 4,C,0
78 FOR K=0 TO 3^
88 FOR V=0 TO 95
90 HW=39 -K ; VM=95-V ; l>T^T=TMT f 50R rKUWKW4
100 COLOR l + 8»(I>I5T/8-tNT(DI5T/8>)
.!• -I, tJ " I- U I f% f K
120 PLOT 79-X,V
138 PLOT K,191-V
148 PLOT 79-l<,191-Y
150 MFMT V
160 MFKT K
178 RFM ROTOTF COLOR REGISTERS
188 rH0Li()=PEEKC705>
190 K=705
208 POKE K,PEeKCK+lJ
218 H=K+1!IF K<712 THEM 200
228 POKE 712,CH0LD
238 GOTO 188
EXPLORE A NEW DIMENSION IN SOFTmRE
When you reach the stage where you need more
sophisticated software to help you with business and other
applications, explore the programming power and flexibility
available to you with systems software from OSS.
BASIC A+ Wm Rate an A +
BASIC A + is what you'd expect from the authors of Atari BASIC! It's the only logical upgrade available to
the Atari BASIC programmer, and it adds statements and features that enhance the Atari's real power, flexibility and
ease of use. While retaining all the features which make Atari BASIC so easy to use, BASIC A+ also offers features that
place it at the forefront of modem interpretive languages.
BASIC A+ is designed to support any business programmer or Atari user. Its enhancements include structured programming,
more powerful input/output, helpful program development and debugging aids, and several business-oriented features, including a
very comprehensive PRINT USING command. And, exclusively for the Atari computer, there is an amazing array of
PLAYER/MISSILE GRAPHICS commands and functions.
No other BASIC for Atari can match BASIC A+ when it comes to features, compatibility, and ease of use... $80.00
A Strong Software Family
Other major systems software products from OSS include:
MAC/65
C/65
TINYC
BUG/65
the finest and fastest complete 6502 macro
assembler/editor package you can buy.... $80. 00
the first native mode "small c" compiler for Atari
and Apple computers. ...$80.00
for structured programming, an easy-to-use inter-
preter, a learning tool.. ..$99.95
a powerful, self-relocatable debugger. FREE with
MAC/65.... $34. 95
And More...
OS/A + , the first and finest operating system for BOTH Atari and Apple II
computers, is NOW included FREE as a part of every OSS systems software
package. OS/ A 4- features a keyboard-driven, easy-to-use command processor,
several simple resident commands, and logical and readable requests for even the
most sophisticated utility commands. Versions of OS/A-f for some higher
capacity drives are available at extra cost.
NOTE: Unless otherwise noted, all OSS products require 48K and at least
one disk drive.
ASK YOUR DEALER, or call or write for our brochure.
ATARI, APPLE II, and TINY C are trademarks of Atari, Inc., Apple Computer, Inc., and
Tiny C Associates, respectively. MAC/65, C/65, BASIC A4-, BUG/65, and OS/A+ are
trademarks of Optimized Systems Software, Inc.
Optimized Systems Software, Inc. 10379 Lansdale Avenue • Cupertino • California • 95014 • (408) 446-3099
PAGE 92
A.N.A.L.O.G. COMPUTING
ISSUE 10
Using the PERGOM Drive withDouble-Sided Disks
by Kevin Lever
I recently purchased a Percom Disk Drive as a first
disk drive for my ATARI 800. 1 was quite impressed
with the double density storage capacity when, in
transferring my cassette-based BASIC games to disk,
I found I was able to put all of the games on one disk!
So, of course, I went out and bought a disk-based
adventure game to find out what random-access files
were all about. Here I found my first major obstacle:
The adventure game consisted of three double-sided
disks, six sides in all, but the disk drive is single
sided. No problem on the 810 drive, true, but with
Percom it's another story.
It seems that the 810 by ATARI uses a timing
sector, recorded at format time, to let the drive know
where the disk is. However, most other systems use
the little hole in the lower-right side of the disk,
together with a properly oriented LED and sensor in
the drive itself, to keep the system informed of disk
position. Such is the case with the Percom disk drive.
So, when a program is recorded on both sides of a
disk, the ATARI 810 drive cares nothing of the
timing hole in the disk. It has no trouble locating
side-two data. But now consider the Percom unit: It
always expects to find the timing hole in the lower
right corner when the disk is inserted into the drive.
Now, if we flip the disk over to read side two, the
timing hole will be on the lower left. The LED and
sensor in the disk drive sees only cardboard on the
lower right, and can't read the disk!
An industry-standard drive equipped to read
either side of a disk should have two sensors, one
positioned to read the timing hole at the lower right,
and the other located at the lower left. The user flips
a toggle switch on the front panel to inform the drive
which side of the disk it will be reading. The Percom
single-sided drive is not so equipped. So what do we
do with commercial software recorded on both sides
of a diskette? We make an extra hole in the disk
jacket! Now, either way the disk is inserted, the
sensor will be able to locate one of the timing holes.
The procedure is very simple, but care must be
exercised to avoid damaging the diskette or getting
fingerprints on the magnetic surface. If this happens,
you might as well throw that disk away. CNot so fast.
See Charles Bachand's "Burp" program in Issue hlo.
g.) However, if you are careful and methodical, you
should have no problems. As a precautionary step,
first wash your hands and then find a clean,
uncluttered work surface.
The first step is to obtain a "crashed" diskette,
either from your own misadventures or from your
local computer store. Odds are, if the store
demonstrates programs for its customers, they will
have a few disks in the wastebasket. You are going to
make a template." Take the "crashed" disk and
carefully slit open one edge of the disk jacket with a
sharp knife. Remove the disk itself and throw it
away. Save the jacket, and put a label on it reading
"TEMPLATE" and add it to your library.
Now it's fairly easy to modify your disks for use
on the Percom drive. Retire to your handy work area
with the template, the disk you're going to modify, a
pencil, a hole punch, and a strip of paper. Refer to
the diagram as your' proceed. Place the disk to be
modified, flat on the table, label side up. The timing
hole should be on the lower right. Now place the
template over the disk, but with the timing hole on
the lower left. Carefully match up the edges —
accuracy is important — and mark the perimeter of
the timing hole onto the disk jacket of the subject
disk. Press very gently with the pencil. Now flip
over the subject disk and repeat the procedure to
make a mark on the lower right, directly behind the
mark on the other side. This is where you will punch
the new hole.
The idea is to punch a hole through the disk jacket,
but not through the disk itself. That is the only
tricky part, and you might try it once on a disk you
don't care too much about. You are going to have a
insert one part of the hand punch between the disk
jacket and the disk itself, once on each side. I
recommend slipping a strip of paper inside the disk
jacket to protect the disk surface. Again, refer to the
diagram. (You might also make sure your punch isn't
magnetized!) If you damage the disk surface or warp
the disk, it will be ruined, so don't blame me if you
fail to heed this warning. Now slip the punch inside
the disk jacket and punch a hole where you made the
mark. Again, punch the jacket only. Repeat the
procedure on the other side. You can now read both
sides of the disk!
The procedure I have described will enable you to
use commercial software which is recorded on two
sides of a disk. It will also enable you to use both
sides of your own disks. It will almost definitely void
the warranty on your commercial software, so check
with the retailer and be advised. When writing to
both sides of your own disks, remember that side
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 93
two was not certified, so you're on your own. I have
had no problems at all.
I guess there is some advantage to owning an 810
drive. But for me, the capacity to use double density
far outweighs the few minutes it takes to do the
modification. Good luck! D
ATARI 810 is a
trademark of
ATARI, INC.
Percom RFD is a
trademark of
Percom Data
Company, Inc.
ATTENTION PROGRAMMERS!
A.N.A.L.O.G. Computing is interested in programs, articles, and software review submissions
dealing with the ATARI 400 and 800 home computers. If you feel that you can write as well as you
can program, then submit those articles and reviews that have been floating around in your head,
awaiting publication. This is youropportunitytoshareyour knowledge with the growing family of
ATARI computer owners. A.N.A.L.O.G.'s rate of pay is comparable to many other computer mag-
azines. All submissions for publication must be typed, upper and lowercase with double spacing.
Program listings should be provided in printed form, and on cassette or disk. By submitting
articles to A.N.A.L.O.G. Computing, authors acknowledge that such materials, upon acceptance
for publication, become the exclusive property of A.N.A.L.O.G. If not accepted for publication,
the articles and/or programs will remain the property of the author. If submissions are to be re-
turned, please supply a self-addressed, stamped envelope. All submissions of any kind must be
accompanied by the author's full address and telephone number. Send programs to: Editor,
A.N.A.L.O.G. Computing, P.O. Box 23, Worcester, MA 01603.
PAGE 94
A.N.A.L.O.G. COMPUTING
ISSUE 10
INSTALLING
YOUR OWN
CHIP
by Richard Herring
By now everyone has heard of the glories of the
new GTIA chip for the ATARI. Providing twelve
graphics modes (0-11) rather than nine (0-8), it will
allow some dramatic effects. But unless you have a
fairly new ATARI, the new graphics chip will have to
be purchased and installed. Purchase is easy — the
chips are now available for $25 to $30. Installation,
although not difficult, will require disassembly of
your computer. If you have the nerve (and the desire
to save a service charge) here's how to do it.
First, let's take an imaginary tour of your 800's
innards. They're housed in a two-piece plastic case.
Nothing is attached to the case bottom. We'll
eventually take everything out of the case top except
the keyboard. The case top has a removable ribbed
top cover. The cartridge door, which you use to
access BASIC, is the front third of this cover. Under
the rear portion of the cover is the memory bank
(lOK ROM &L 8 to 48K RAM).
Lying horizontally under the keyboard and the
memory board is the mother board. This is the
largest circuit board in the computer. It runs from
front to back and is about half as wide as the 800 's
case. Attached to the right side of the mother board
is the power supply board, one side of which is the
black side panel of your computer. That panel has
the on/off switch, power in jack, etc.
The last board in your 800, and the one you'll be
plugging the GTIA into in a few minutes, is the
personality board. It plugs vertically into the mother
board and stands behind the memory board. Among
the several chips it holds are three 40 pin chips which
appear quite similar. They are the 6502 CPU, in
socket A303; Antic, in A302; and CTIA, in A301.
Before you start doing anything inside your
computer, make sure you have a good working
environment. You need a clean work area at least 5 to
6 times the size of your 800. You should avoid static
charges by working in an uncarpeted area, not
wearing clothes that create static, not walking
around during the installation process and
grounding yourself before you begin.
You should read through these steps completely
before you begin. Do not handle the pins of chips or
the connectors of boards unnecessarily since the oil
on your skin does not help make good connections.
The only tools you will need are a medium size
Phillips screwdriver and a flat, strong tool to pry out
the chip — a standard screwdriver or nailfile will
work. Make sure that any metal tools you use are not
magnetized. You will remove a total of eight 5/8 inch
and twelve 3/8 inch Phillips screws.
Last, before you do anything remember that this
process will void your warranty.
1 ) Disconnect the power supply cable, TV switch
box cable and peripheral cable.
2) Place the 800 in your cleared working area.
3) Open the cartridge door and remove any
cartridges (BASIC, etc.).
4 ) Rotate the two black clamps , at the left and right
rear corners of the cartridge slots, outward.
5) Lift the front edge of the ribbed top cover
slightly and slide it toward you. Place it aside.
6 ) Turn the black clamps in as far as possible . They
must be in this position when the circuit boards are
removed from the 800 case top.
7) Remove the lOK ROM cartridge and all RAM
cartridges. Place them aside.
8 ) Turn the 800 over and, supporting the keyboard
side, remove the five (5/8 inch) recessed screws.
9) Remove the plastic case bottom by lifting the
rear first so that the front will clear the joystick jacks.
10) Unplug and remove the speaker which lies under
the front left corner of the 800.
11) You see a metal bottom over the mother board.
The power supply board is uncovered along the side.
Remove the (5/8 inch) screw from the power supply
board. The screw lies approximately under the
START key.
PHOTO 1
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 95
12) Remove two (5/8 inch) screws from the outer
lip of the metal case — one on the left, one on the
right. Do not remove the nine screws which hold the
metal bottom yet.
PHOTO 2
PHOTO 4
20) Supporting the power supply board, remove
three (3/8 inch) screws which attach it to the metal
case.
13) The 800 should still be upside down. Move it so
the keyboard is facing you and 12 inches in from the
edge of your table. Slowly lift the metal case
(covering the mother board and attached to the
power supply board on the left) and flip it over
toward you. NOTE the six inch ribbon cable which
attaches the mother board to the case top roughly
between the second and third joystick controller
jacks. Do not bend it. It is stuck in place with padded
tape which can pull loose.
14) If the mother board and its metal case will not
come out check the 2 black clamps which held the
ribbed top cover over the memory bank.
15) Set the metal case down on its bottom cover.
16) Unplug the ribbon cable from the mother board.
17) Place the 800 's case top (with the keyboard and
ribbon cable) aside.
18) Follow the cable from the TV switch box to
the point where it plugs (RCA) into the power
supply board. Unplug it from socket J203.
PHOTO 3
19) Unplug the rust colored connector (at J202 on
the power supply board) near the fourth joystick
jack.
PHOTO 5
21) NOTE the power supply board is still attached
to the mother board by a 22 pin connector at socket
J201. Find this connection near the fourth joystick
jack. Gently and evenly lift the power supply board
being careful not to bend any of the pins. Pressure
will be needed only at the 22 pin connector.
PHOTO 6
22) Place the power supply board aside.
23) Turn the metal case (covering the mother board)
PAGE 96
A.N.A.L.O.G. COMPUTING
ISSUE 10
upside down.
24) Supporting the side with the joystick jacks,
remove the nine (3/8 inch) screws from the sheet
metal bottom of the metal case. The mother board is
attached to the metal bottom. The metal case top is
now disconnected.
PHOTO 7
25) Holding the metal case top securely to the
mother board, turn the unit over (right side up).
26) Lift the metal case top STRAIGHT UP and place
it aside.
PHOTO 8
27 ) The personality board is now accessible standing
behind the memory board. Carefully, hold the
mother board down and pull the personality board
straight up and out of its socket.
28) Lay the personality board flat with the chips up.
Locate the CTIA chip in socket A30L It is the
middle of the three large chips.
PHOTO 10
29) Carefully remove the CTIA chip. You can pry it
from the ends with a strong flat tool — a standard
screwdriver or nailfile will work. Alternate prying
each and only a little so the chip comes straight out.
30) Note that the lower end of socket A301 (toward
the personality board's gold connectors) has a round
notch. This notch MUST align with a similar round
notch in the end of the GTIA chip when it is
installed.
PHOTO 9
PHOTO 11
31) Set the new chip in its socket. The two rows of
pins may be flared too wide. If so, place the chip on
its side on a hard surface. Carefully rotate it down
against the pin ends to bend them closer together.
Seen from the end, the pins should be perpendicular
to the body of the chip.
32 ) Align the GTIA chip so that all pins are correctly
placed in the socket. The round notch in the end of
the chip MUST align with the notch in the socket.
33 ) Pick up the personality board and push the chip
straight in. You may need a soft clean cloth to put
against the bottom of the board to protect it (and
your fingers). When the chip is all the way in (it may
snap into place!) it MUST be seated as close to its
socket as the other chips are to theirs. Compare to
make sure the GTIA is fully seated.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 97
34) Plug the personality board back into the mother
board. The chips face the rear of the computer (away
from the memory bank). You may need to rock it
slightly from end to end to make sure it is in all the
way.
(SEE PHOTO 9)
35) Place the metal case top back over the
personality board and on the mother board.
(SEE PHOTO 8)
36) Holding the mother board and its metal case top
securely together, turn them upside down.
37) Supporting the side with the joystick jacks,
reinstall the nine (3/8 inch) screws.
(SEE PHOTO 7)
38) Turn the mother board over (right side up).
39) Reposition the power supply board. Note the
two alignment pins on the lip of the metal cover.
Making sure all pins on the 22 pin connector at
socket J201 are aligned, push it gently, evenly back
together.
(SEE PHOTO 6)
40) Reinstall three (3/8 inch) screws which hold the
power supply board to the lip of the metal case.
There are two holes toward the back of the board.
Do not put a screw in the rear hole.
(SEE PHOTO 5)
41 ) Replug the RCA plug (from the TV switch box
cable) to the power supply board at socket J203.
(SEE PHOTO 3)
42 ) Replug the rust colored connector at socket J202
(near the fourth joystick jack). The red wire goes
toward the joystick jack, the orange wire toward the
rear of the 800.
(SEE PHOTO 4)
43) Position the mother board right-side up, with
the joystick jacks away from you. Position the plastic
computer case top upside down, with the keyboard
side near the joystick jacks.
44) Making sure all pins are aligned, replug the
ribbon cable.
45 ) Make sure the two black clamps which hold the
ribbed top cover are turned in as far as possible
(locked position).
46) Turn the mother board assembly over into the
plastic case top. Be careful not to damage the ribbon
cable and to align the contact switches in the four
yellow keys (START to RESET).
47) Reinstall the (5/8 inch) screw which holds the
power supply board to the top of the 800's case just
below the START switch.
(SEE PHOTO 1)
48) Reinstall two (5/8 inch) screws which hold the
lip of the metal case to the 800's plastic case top.
These screws go on the right and left side holes
nearest the center. The rear holes are for the screws
in the plastic case bottom.
(SEE PHOTO 2)
49) Replace the speaker in its hole and plug it in. The
number on the plug goes toward the 800's bottom.
50) Replace the plastic case bottom. Align the front
first so the joystick jacks fit in their slots. Watch, as
you lower the rear of the case bottom, that the
speaker remains positioned properly. When the case
bottom is in position, check that the TV switch box
wires goes through the hole in the rear of the case.
5 1 ) Supporting the front (keyboard) side, replace
five (5/8 inch) screws into the plastic case bottom.
52) Turn your 800 right-side up and reinsert the lOK
ROM cartridge and 8K or 16K RAM cartridges. (If
your boards do not have covers, be sure the chips
face the rear of the computer.)
53 ) Turn the black clamps out and replace the ribbed
top cover. Turn the clamps in to lock the cover in
place.
54) Reinstall BASIC (or other cartridge) and close
the cartridge door.
55) Reconnect the cable to the TV switch box, the
power cable and the peripheral cable.
You are now ready to try graphics modes 9, 10 and
11. If you have any trouble, check first that all
external connections are good, that the channel 2-3
switch is correctly set and that your television is
properly tuned. If you still have problems, check
that ROM and RAM cartridges are properly seated.
If all else fails, walk through the installation process
again to make sure that all internal connections are
good and that the GTIA chip is properly seated.
Although the GTIA is downward compatible (all
software designed for the CTIA will still run) you
may have a few nice surprises. Check the new gold
color of the mazes in Jawbreaker or Mouskattack for
examples. D
// you are unable to obtain a GTIA chip from |
your
'.ocal dealer or repair shop, you may order
them.
directly from A. N. A. L. O. G. at $25.00
each
To order send check or money order to:
GTIA
P.O. Box 23
Worcester, MA 01603
PAGE 98
A.N.A.L.O.G. COMPUTING
ISSUE 10
SCOTT ADAMS' ADVENTURES 1-12
Adventure International
A Division of Scott Adams, Inc.
Box 3435
Longvk'ood, EL 32750
24K Tape $19.95
by Brad Griffin
>. The twelve original Scott Adams' Adventures are
a collection of superb and entertaining text
adventures. The style of writing is the same
throughout, filled with clever puns and exceptional
puzzles. With the change in scenarios, each
adventure maintains its uniqueness, much like a
collection of Jack London stories. Though the
difficulty varies, the quality is always high. If one
enjoys any of the adventures, the others will not be a
disappointment. Each of the twelve adventures will
be briefly reviewed.
#1 ADVENTURELAND
A journey through a strange land filled with
dangers, ranging from a fire-breathing dragon to
deadly chiggers. Deadly chiggers? There is a way to
avoid the peril of infection from their bites, but can
you find it in time? Clues abound in this adventure
that challenges you to find thirteen ^TREASURES*
and store them in the correct location. Considered a
moderate level adventure in difficulty, fitting the
pieces of this puzzle together will not be
accomplished overnight. The game-save feature (as
with the other eleven) comes in handy when you are
just about to try a potentially dangerous move. After
several hours of trial and error, you begin to think
like Scott Adams, — perversely. You find your way
into an elaborate maze and, without too much
difficulty, discover the treasures that it hides. You
seem to be catching on to this game fairly easily.
Then, (uh-oh), you cannot get out of the maze! You
should have saved the game before you entered it.
No wonder it seemed so easy; it was a trap. You will
be much more careful the next time. Come on
ADVENTURELAND, this time the challenge will
be met.
#2 PIRATE ADVENTURE
The easiest of the twelve adventures, this is an
ideal introduction to the text adventure. The liberal
use of hints enables the first time adventurer to
proceed without too much frustration. By the end,
you are ready for greater challenges. If you are stoic,
or masochistic, the hints need not be requested.
Starting in a London flat, a magic excursion takes
you to far away places in search of Longjohn Silver's
treasures. There are no mazes, but danger exists just
ahead. Alligators, deadly mamba snakes, a
mongoose, and a parrot are but a few of the obstacles
that block your way. "Aye matey. Ye must use your
'ead if me treasures Ye 'opes to find. Yo-Ho-Ho and a
bot'leof. .."
#3 MISSION IMPOSSIBLE
"Good morning Mr. Phelps. Your mission
(should you decide to accept it) is to prevent this
automated nuclear reactor from being destroyed by a
saboteur's TIME BOMB!" Attention all honorary
IMF members. This adventure is for you. There are
no tricks involved here; no magic either. Just a clear
head and a keen eye are required to solve this one.
Everything you need is in a manila envelope. Or is it?
A strong heart is mandatory as the tension mounts.
With each move, the reactor comes one step closer
to oblivion. Unlike many of the other adventures,
the solution here is arrived at using logic and
comimon sense. Sounds simple, huh? Click. . . Did
you just push the wrong button?
#4 VOODOO CASTLE
Written by Alexis Adams, this adventure is eerily
authentic. Count Cristo has been cursed. You must
remove the curse and foil the worshippers of the
dead. West African artifacts and modern-day labora-
tory chemicals paradoxically weave their magic in
your attempt to reverse the spell. No mazes here, but
magic is everywhere to help and to hinder your
undertaking. A medium named Maegen may be
helpful. Maegen? Maegen Adams? Written by Alexis
Adams? For Scott Adams? Is this the Adams Family?
No, it couldn't be. That was Addams. Walking
through this castle with its dusty corners,
mysteriously slamming windows, and animal heads
makes you wonder if it is not more than a
coincidence. Be careful, doors may close behind
you and you will have a devilish time getting free.
"Double, bubble. . .Toil and Trouble. . . "
#5 THE COUNT
You awaken in a strange bed. There is a heaviness
in the air. Exploring the adjacent rooms, you find a
watch (keep close track of the time), a clove of garlic
(Huh?), Nodoz pills, . . .what is all this? A coat of
arms ... a closer look ... it is the family crest of
Dracula! A surly mob outside makes you soon realize
that you must destroy the evil Count Dracula.
Where is he? Further searching reveals a
bathroom. . . go ahead (tsk,tsk). Talk about your
realism (excuse me for a minute). Yawn. Tired? Take
a nap; you will feel much better. Hmmmm. Didn't
sleep that well? You sure look pale, and what are
those marks on your neck, as if I didn't know. Time
is of the essence (so is the garlic). Find the vampire
and destroy him, but you do not have all day. . .or
night. Better play this adventure during the daylight
hours, if you are the nervous type. You cannot afford
to bat an eye, or is that supposed to be "eye a bat?"
#6 STRANGE ODYSSEY
This outer space adventure places you at the outer
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 99
edge of the galaxy. Your goal is to gather a fantastic
collection of treasures and return to Earth. SF nuts
will thoroughly enjoy the challenge. Just getting out
of the space ship is quite an undertaking, and that is
only the beginning of an exciting expedition; an
expedition that takes you through a Jovian mining
colony to an intergalactic zoo with bizarre
inhabitants. The hazards of a methane snow storm
may not deter you, but do not get too close to the
centurion slime trees. Persistence is rewarded in this
adventure. Clever solutions again, but with the
proper mindset, you will solve this puzzle in just a
few hours. However, hours at the edge of the galaxy
may really be days here on Earth. Blast off! !
#7 MYSTERY FUN HOUSE
The idea of being trapped in a fun house is usually
not terrifying, but it is here. First, you have to get in,
and you have no money. Do not give up; you will
find some. This adventure does not match the others
in excitement or challenge. Mazes, the time factor,
and buttons to be pushed are much the same. If this
were one's first encounter with these adventures, it
might be interesting. It offers the typical dilemmas
expected, and the solutions are predictable. The best
reason to play MYSTERY FUN HOUSE is to
complete the set. Even Jack London slipped once in a
while.
#8 PYRAMID OF DOOM
Lost in the desert, you see a pyramid. Entry is
forbidden, and a curse will fall upon you if you defile
the ancient resting place of the pharoahs. A
collection of *TREASURES* await you within the
stone edifice. Discovering the location of all of them
is quite difficult. The obstacles preventing you from
reaching your final goal are formidable. Several
hours (to days) will be necessary to find them all.
While you are away from the adventure physically,
your mind will constantly return, trying to figure out
how to get past the Giant Oyster, or how to dispose
of the dreaded Purple Worm. PYRAMID OF
DOOM is one of the best text adventures written.
The combination of easily-found treasures and
seemingly impossible clues to others gives it a
mixture that keeps the adventurer coming back until
it is finished. Some magic is involved, but no mazes
here. It must be magic if one dies of dengue fever
without being bitten by the mosquito, Aedes ae^ypti,
which transmits this viral disease. Well, other than
that, it is very realistic and entertaining.
#9 GHOST TOWN
The search for thirteen treasures in a deserted
ghost town is going to be a long one. The most clever
of all the Scott Adams' Adventures, GHOST
TOWN requires all of your brain power to solve.
One may go for days without progress ( it often helps
to put it away for a time, in order to let new thoughts
ferment). How long has it been since you used Morse
Code? Do you have an old Boy Scout Handbook
close by? Finally, you can get that (expletive deleted)
Purple Worm. Remember the way to make
gunpowder (a noble gesture)? A special bonus
scoring system is offered as a part of this adventure,
but it is really of little consequence to the true
adventurer. Completion of this adventure is
satisfying enough. "Smile when ya' say that,
pardn'r."
#10 & 11 SAVAGE ISLAND — PART I & II
A challenge for the expert adventurer, this two-
part adventure offers everything you could hope to
find in this or any other world. This surrealistic
journey begins on a small island and takes you to
undreamed-of places in search of a secret. You must
survive Hurricane Alexis, volcanoes, a
Tyrannosaurus, and many, many more dangers, just
to discover the password enabling you to play PART
II. You must be ready for anything as your journey
continues. If you are not ready for anything as your
journey continues. If you are not ready, your soul
will never rest easy. Mazes, dangers, and puns are all
here in a mammoth adventure that will not be
finished without investing a great deal of time. It is
well worthwhile. Where else can you be a part of
psychotransfiguration?
#12 GOLDEN VOYAGE
The final adventure in the series has you searching
for the secret to make an aging king young. You only
have three days to accomplish your mission, and you
must learn how to sail a ship to the correct location.
Though a bit of a letdown after SAVAGE ISLAND,
all the elements of a good adventure are present. If
you have completed the other eleven adventures,
this one is not too difficult. A word of warning: keep
your eye on the Cyclops. He has his on you! D
WANT
TO
SUBSCRIBE?
CALL
TOLL FREE
1-800-345-8112
InPenna. 1-800-662-2444
PAGE 100
A.N.A.L.O.G. COMPUTING
ISSUE 10
H
16K cassette 24K disk
by Tom Hudson
When looking over the reader survey cards sent in
from A.N.A.L.O.G. #9, one quickly notices a
common request: more assembly-language game
programs. In an effort to satisfy those avid video-
gamers out there, I have written "Fill 'Er Up," a
public-domain assembly-language game.
PROGRAM LISTINGS
This article contains two program listings. Listing
#1 is a BASIC program which, when run, will build
the machine-language game in memory and execute
it. Listing #2 is the assembly-language source code
for "Fill 'Er Up!," for those who are interested in
assembly-language programming.
To play the game, type listing #1 into your
computer. I realize that those DATA statements
aren't fun to type in, but they are a necessary evil.
This game differs from previous A.N.A.L.O.G.
games in that this data is listed in hexadecimal (base
16). If I had listed it in decimal, 'Till 'Er Up!" would
have required 24K memory on cassette. If you want
to play the game, you have to pay the piper. . .
After typing the BASIC program into your
computer, SAVE it. When the program is RUN, it
will transfer control to the "Fill 'Er Up!" machine
code, which will wipe out the BASIC program. If this
happens, you'll have to re-type the BASIC program.
The program will warn you before it blows itself
away.
After SAVEing the BASIC program, RUN it. The
program will READ the data and check it to make
sure it was typed in correctly. Two types of error
messages may be displayed. A BAD DATA error
means that the line indicated was mistyped. A
MISSING LINE message indicates that you left a line
out completely. It takes roughly 2 minutes for the
program to check the DATA.
If the program is typed in correctly, it will warn
you to SAVE it before it starts the game. Type
"YES" to this message to continue.
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 101
GAME DESCRIPTION
You have been assigned to build a series of water
reservoirs in uncharted territory. Unfortunately, an
electrified starfish (don't boggle; read on) is
patrolling the area. Using your joystick, you must
maneuver yourself around on the screen, building
walls to hold the water, while avoiding the starfish.
You start out on the white border surrounding the
planned reservoir area. You may move around on
these white walls by moving your joystick in the
desired direction. You can build a reservoir wall by
moving into the black "uncharted" area while
pressing your joystick button. The walls you make
can be any length, and must be terminated at a white
wall. When you finish a wall by hitting a white wall,
the area you have enclosed will fill with water. Do
NOT run into the wall you are building or you will
be destroyed. If the starfish hits you or any part of
the wall you are building before you complete it, you
will be destroyed. On levels 1,2,4,7,12 and 13 you
wil be safe from attack when standing on a white
wall, but on other levels the starfish can destroy you
on contact at any time!
At the bottom of the screen are several informa-
tion displays. "TGT" indicates the TARGET area
you must fill with water before you complete the
level. "CUR" indicates the CURRENT area you
have filled. Once CUR reaches TGT, you have com-
pleted the level and are awarded points. SCORE
indicates the number of points you have gained. At
the end of each level, the computer will give you 2
points for each unit over the target you have filled. If
the TARGET amount is 8000 and you fill 9000
units, you receive 2000 points. "Fill 'Er Up" may be
paused at any time by pressing the space bar.
This game contains 16 levels of difficulty. The
level number is shown in the lower left corner of the
screen.
You have 3 lives, shown in the lower right corner
of the screen. Good luck! D
i REM **# FILL 'ER UP' ***
10 DflTO 8,1,2,3,4,5.6,7,8,9,8,8,0,8,0,
0,0,18,11,1^,13,14,15
20 DIM PR0G5C3248) ,DftTSt91),HEXC22):F0
R K=:e TO 22:REftD N : HEK (X3 =N : NEXT XlLIN
E=998:PMTR=l:TRflP 60
25 LIHE^LIME+IO:? "LINE :"; LINE ;BEAD Drt
T$:IF LENfDATSjOge THEN 110
28 DftTLIN=PEEKtl833+PEEKtl84J«256:IF D
ftTLIHOLINE THEN ? "LIME "JLINE;" MISS
ING!":ENI>
30 FOR K=l TO 89 STEP 2 :Dl=ftSC CDftTS CX,
H5 3 -48 : l>2=:ft5C fDOTS (X+1 , X + IJ J -48 : BYTE=H
EXCD13«16+HEXCD2J
40 PR0GS(PNTRJr:CHHS(BYTE3 : PNTR = PNTR + 1 :
TOTOL=TOTftL+BVTE:HEXT X.'READ CHK5UM:IF
TOTfliL=CHKSUM THEN 25
50 GOTO 110
60 IF PEEKC195)<>6 THEM llO
70 J. "QMARNING: MftKE SURE PROGROH IS B
EEIiS!":? :? "READY TO RUN IJiH^JI < MM T
;:DIM VMS(3J:IHPUT VMS
80 IF YNS="VES" THEM a=USR CODR CPR0G$} ,
0DRCPR0G:S)1 :EN&
90 END
118 ? "BfiD DflTfl: LINE ";LINE:END
1008 DftTfl 6868858168858Ofl9008582fl91485
83ft008B1889182ft5801869fll8580fl58169e085
8ia58218e9ei8582a583e90e,4894
1010 DOTA 8583C92OD0DEfi582C989D8D82865
E4fl9H8D6F02fl9O18D2C208D442020E614O940
8DE71Fft9808DE81FiQ9D0ft204, 10469
1020 DflTfl 9D241F9D2FlFCftl0F7fl2859D401F
CA10FAA9ee8D442085D48D46208DlED08D2F02
8D0ED48Dft81F8DO8D2fl2859D, 15237
1830 DATA 9DlFCftlOFO80fl61Ffl9O38DflClF89
9e8D471FO90fl8DC402ft9248DC502fl9948DC602
fi9C480C702fi9888DC802ft976, 28378
1840 DATA 8DC382A9348DC882A9BB8D3e82A9
lE8D3102ftOBEA21Dft9062e5CE4A9108D07D4A9
2E8D2F02A9038D1DD0A9408D, 25144
1050 DATA OED44C4D15A90OA27F9D88119DO8
129D80129DO8139D8013CAD0EE60A5CE0A85CB
A98085CC06CB26CC86CBA5CB, 30257
1860 DATA 85CF26CCA5CC85D805CB26CC06CB
26CCA5CB1865CF85CBA5CC65D085CCA9801865
CB05CBA93065CC85CCA5CD29, 36605
1070 DATA 03AAA5CD4A4A1865CB85CBA5CC69
0885CC6eA20e86CDA2O0d6CE2OFD14A6CEA9eO
A02791CB8810FBE8E056D0EB, 42651
1080 DATA A9038D2620AE2620BD122085CDBD
162O85CEBDlA208D2720BDlE2O8D282OBD222e
8D292020FD14BDFElFA0e01i, 46785
1890 DATA CB91CBA5CDA86D272885CDA5CE18
6D282e85CECE2920D0DFCE262010BBA95885O5
A95485D6ADA61F1869018DA9, 52357
1100 DATA 1FA90O8DA41F8DA51F8DAA1FA9FF
8DA31F20E719AD7A2009908D371FAD792e8998
8D381FAEA61FBD5C1F8DA91F, 57857
1118 DATA BD6ClF8DAAiFBD7ClF8DFDlFA984
8DA31F28E719A90O8D2C20Aft9D89289D8921CA
D8F78D5O208D4F2OADA71FD8, 62242
1128 DATA FBA9FD8D00D2A9FE8D02D2A9FF8O
e4D2A9A38D81D28D03D28D05D2A988854DA5D4
Fe22AEA61FBD8ClFD817A5D5, 68585
1138 DATA 85CDA5D685CE28FD14AOOOBDeA20
31CBDDFE1FF8034C7118A5D2F0064C3A1A4C18
16A9O485D2AD78O28D4820AA,7368O
1140 DATA BD5120i87D512885D7BD612ei87D
612085D8e5D7F0DCA5D51865D78D2D20C99FB8
O885CD38FD51208D2A20A5D6, 79251
1158 DATA i865D88D2E28C955B8BB85CE38FD
612e8D2B2B28FD14A0OOBD0fl2031CB8D4D208E
4E20AD2A2O85CDAD2B2O85CE, 84075
1168 DATA 20FD14A080BD0A2031CB48AD8402
DOO668DO1E4CO41768DDFE1FD015AD4D2OAE4E
2ODDFE1FDO0AAD2D2O85D5 AD, 88959
1170 DATA 2E2085D64C1816AD4F20D0278D50
2eAD48288D892BA9018D4F288DA81FA5D58D2F
288D31288D3320A5D68D3828, 93283
1180 DATA 8D32288D3420AD4D20AE4E28DD02
28D0O34C7118AE5O2OAD4828DD892OFOOCEE5e
2BE89D8928A9889D8921FE89, 97976
1198 DATA 21A9838D2928A5D585CDA5D685CE
2eFD14A8e8BlCB3D0E201D0Z2O91CBCE2920F0
19AC582eBE8928BD51281865, 102886
1200 DATA CD85CDBD61201865CE85CE4C6517
A5CD85D5CD332090068D33284CA917CD3120Be
038D3128A5CE85D6CD342090, 108021
PAGE 102
A.N.A.L.O.G. COMPUTING
ISSUE 10
1210 DATft 068D34204CC817CD3220B0038D32
2eflE4E28«D4D20DDFElFFfl034Ci816fl90e8D4F
2O20ftClflaOfl41F8»fl?lFflDft5, 112367
1220 DOra iF81>flrtlFfl9eF8Dfl31F20E719fl901
80492O205ei9fiEfl61FflDA41F38FD5OlF8Dfl51F
ftDfl51FFD6ClF8DflfllF10034C. 116810
1230 DfiTft 0316ODfi61FC50FFOO3EEfl61F0Efi9
lF2EAfllFfl9FF8Dfl31F2OE719fl205O000B97920
i87D9DlFC90fl300C38E90fl9&, 121336
1240 DflTfl 9D1FFE9C1F4C431S9D9D1FC8CA10
E2fl2O5BD9DlF09109D4OlFCaiOF5fl9O18D4420
8D2C2020E614fl9408DE71Fft9, 126120
1250 DflTifl 8O8DE81Ffl96O8D44284C4D15fl90O
8l>01&28D03D28D05D2A9ei8D4620rt90F8l>4720
ft90585D3ftD47208DOll)2ftil)0A, 130637
1260 DOTft D2291F8DO0l)2flD8ftD229FO0D472O
8DC5028r>C302fl5D3D0E0CE472010D7CEfiClFftl>
flClF89908D471FC990D025fl9, 136026
1270 DflTft 488D181Fft91F80191FiftDlF»02901
D0F9<iDlFD02901F0F9fl9208DlSlFft91F8D191F
4C39i4fi9ei8D2C20ADOflD229, 140313
1280 DflTfl FEC99FB0F785CI>rtD0ftl)2297EC955
B0F785CE2OFD14fl0OOBDea2O31CBD»FElFDODB
2eE614ft5C»85D5a5CE85I>6fl9^ 147062
1290 DftTfi O08D492OflDO81FFOlC2O5O19fiD2F
2085CDfll>302085CE20FD14ft000BD8E2031CBlD
FElF91CBft9248DC502A9OO8D, 151736
1300 DftTfl 462O8DlE»085D44C0316ttD2F208D
352OflD3O208D362Ofl9OO8D372OflE372OBO892O
8»4fl20BD89218D4B2Oft9918D J 155802
1310 DnTfl 3820ft9038D4C28flD352085CDflD36
2O85CE20F&14fi000flD4920D810BI>0E2031CB91
CB4Ca819A9OO8D4F2O6OBD0E, 160296
1320 DftTfl 2O31CBlDFElF91CBCE4C20F01flftE
4fl2OftD352O187D512O8D352eftD362O187I>6120
8D362O4C7fll9EE3820ftD382O^ 164422
1330 DflTfl CD4B20F002B0034C7519EE3720ftD
3720CD5O2OF002BeB44C6119O204fl9eO9D792O
CfllOFAfl284fl0flfllFDI>7F2eF0 , 169344
1340 DflTO 04BOlO9008flDA91FDD8420B006Cfl
10E94C261ftADft91F38FD84208Dfi91FADfiflilFFD
7F208DftftlFFE79204CF319fl2^ 174451
1350 DfiTA 84flCfl31F3OOCBD7928O9D899201F
C8Cftl0F460fl5DlF0O34C1816flDFt)lF85DlflDE7
lF38E9008REfllFflDE81F38E9, 179820
1360 DftTft 2C8DE91FftD8flO2C9FO90O8OD0ftD2
29874C6ftlflADEClFftA8DEBlFADE91F187&EDlF
85CDflDEftlF187DF51F85CE2e, 18534 7
1370 DATA FD14OOOOBO8A2831CBF0O7A9eF8D
4120D0CCfl5CD18692C8DE81FA5CE18690l)8DE7
1FADEB1F8DEC1F4C1816A901, 198346
1380 DATA 8D442OA90O8D4O2OADE81F38E92C
8&3928ADE71F38E98D8D3A28AE4828AD392018
7D712e8D392885CDAD3A2ei8^ 194641
1390 DATA 7D752e8D3A2885CE28FD14A888Bl
CB3(>eA2eDDFElFFeODDD822OD0DlA9O08l>3F20
4C2718AD48208D3F2e20861C, 198982
1480 DATA 20B81BDDFE1FD08620E71B4CFF1A
DDe228Dee62eE71B4C6DlB20FAlB4C081BA988
8D432O28O61C2eB81BDDe220^ 202940
1410 DATA D8O628E71B4C271BAD4328186901
8D4320C903F00620FA1B4C2F1BAD4O208D3F2O
20861C28BeiBDDFElFD80e28, 206695
1420 DATA E71B4CFF1A20FA1B4C591B20121C
A98O8D432O2OBO1BDDFE1FD0O620E71B4C6D1B
AD43201869018D4320C904F8, 210842
1430 DATA 062OFA1B4C751B2OCB1BDDO22OD8
092O521CA9008D44206020FfllB20B01B4C991B
AE3F20AD3920187D71208D3B, 214584
1440 DATA 2O85CDAD3A20187D75208D3C2085
CEA5CDC99FBOllA5CEC955B0OB28FD14A8OeBl
CB3DOA2060A9O0A20060AI)3F, 219561
1450 DATA 288D4020AD3B208D3920AD3C208D
3A2O60AD3F2018690129038D3F2060flD3F2038
E9O129O38D3F206OAD392O85, 223019
1460 DATA CDCD332090068D33204C2fllCCD31
20B0038D3128AD3A2085CECD342090e68D3428
4C421CCD3220B003aD322020, 226876
1470 DATA FD14AO00BDeE2O3iCBlD022O91C8
6ea9e08D83D28D05D2AD342038ED322O8D4220
AD312038E9O18D312O8D3D2O, 231053
1480 DATA AD32203D3E2038E9O18D3220AD33
201869G18D3320AD34201869018D3428A9008D
ABlFft9O08D452020081DC9O2, 234473
1490 DATA DOF9EE452O28081DC9O2FOF62981
D0E6AD4520C901F005209C1DFODAAD3D2085CD
AD3E2885CE28FD14Ae00BlCB, 239958
1500 DATA 1DO62O91CBEEAB1F28081DC9OOF0
EO29O1D8B6A9018D45202OO81DC9O0FOOA2981
D8A6EE452O4CE21CAD4520C9, 244471
1510 DATA 01D0034C931C209C1DDD8A28FOB4
4C931CAD3D2O1869018D3D2OCD332OD058ADA4
1F1860AB1F8DA41FADA51F69, 248804
1520 DATA 008DA51Fft9008DABlFAD31208D3D
2OA9088D452OA9868DOlD2AD422O8DeOD2F0O3
CE4220AD3E201869018D3E2O, 253008
1530 DATA CD3428F88DAD3D20CD3120D80868
684C931C686860AD3D2085CDAD3E2085CE20FD
14AOOenD8A2O31CBDDO220DO, 257702
1540 DATA 0DBD0A2811CB91CBEEAB1FA90260
DDFElFDOO3A9O160C9eOD0016OA9O36OAD3D20
85CDAD3E2038E901CD3220F0, 262666
1550 DATA 6D85CE28FD14A000BD0A2031CB68
A900A20060ADFC02C921D00DA9FF8DFC02ADA7
1F49FF8DA71FADA71FF0O34C, 267918
1560 DATA 5FE4AD4120300D09A08D07D2A980
8D06D2CE4128A5D3F882C6D3AD4428F0O34C5F
E4A90085D4AD0CD02908F002 J 273196
1570 DATA E6D4ADO4DO29O2FO02E6D48D1EDO
A5D2F002C6D2A5D1F002C6D1ADE51FFO06CEE5
1F4C3E1EA9018DE51FADE61F, 279495
1580 DATA 186901C907D002A90O8DE61FACE6
lFAEE71FA9089DFF119D8812B9ADlF9Deei2B9
B41F9D0112B9BB1F9D0212B9^ 284165
1590 DATA C21F9DO312B9C91F9D0412B9DO1F
9D8512B9D71F9D0612B9DE1F9D0712ADE81F8D
0OD0AD2C2OD831A5D518692F, 288845
1600 DATA 8D83D0A5D6186910AAA9009D7D13
9D7E139D82139D8313A9489D7F139D8113A9A8
9D8013AD4620DO83EEC3824C^ 293747
1610 DATA 5FE47878704DOO388DeD0DOD8DeD
0DeD8D0DeD0DeD8DOD0D0D0D0D0D0DeD0D0D0D
0D8D0D0DeD0DeD8D8D0D8D8D, 295012
1620 DATA 0DeDeD8DODeD0D0D8DOD8D8DQDOD
0D8D8D8DeD8DeD8D8D8D8DODODODODOD0DODeD
ODODODODODODeDSDODODODOD^ 295597
1630 DATA 6DCD0D2e46281F46341F4iBBlE34
27341A008000000000002335321A000O0fl8OOfl
2C361A0O8OOO33232F32251 A, 296939
1640 DATA 0000000000000000000000808027
212D25O88e2F3625320OOOOO8eee4OlOEO28F8
D41004F8E0D4E044A870D41F, 299604
1650 DATA 272E232A3027292A2E3O2E2F2F3O
38048404030303820202020201010101010080
018001018081018101888801,388310
1660 DATA 0101800880800880888880008880
08800e008081402ei0888482424320100884C2
2424131888C82418181C1FF8, 301660
1670 DATA 3818181338F81F1C182424C88818
132442C2O408102043B102O4O81O2040O00OOO
OO8OO80O8O61O1OOFFFFFF00, 303935
1680 DATA 010Oei010001FFFFFF044O100401
8e2O0862CO308C83Ce388Ce33FCFF3FC889E9E
00008054540100FF0OO0O1O8, 386979
1698 DATA FF9F559F55Oe888888888O8O60Oe
00008000000000000000080800000060000000
008000000068888800888800,307722
1700 DATA 0000000800800000000081080088
FF88OOOOOe8888O88e88886OeO0OOOOOOeOOOl
FFOOeOOlOOFFFFOeOlBOeOOe, 308746
1710 DATA Oe8e88eee8e0000327ei8A64E818
80000088808880800808800880000000080008
888008008888888888888880,389147
(see D:CHECK 2, p. 26)
1 DATA 23,955,92,427,745,192,786,445,4
96,94,229,259,158,587,331,5731
1820 DATA 494,554,427,296,789,628,347,
594,792,797,637,422,363,402,567,8189
1170 DATA 298,309,133,133,331,611,509,
488 , 221 , 397 , 339 , 747 , 344 , 149 , 294 , 5215
1320 DATA 85,256,474,378,896,521,202,2
95 , 122 , 168 , 204 , 58 , 362, 981 , 960 , 5962
1470 DATA 938,873,363,75,335,219,140,2
99,489,89,576,361,363,130,239,5539
1620 DATA 463,372,423,86,20,366,693,89
3,961,810,5087
;F!LL -ER UP'
I
■BY TOM HIJOSOW
;A.N,A.L.O.G. COMPUTING «1f)
•,ALPHA8ET!C CmSTA^rrS
^
=
'A '-420
CB
=
'B'-f28
CC
=
'■C'-$29
CO
=
'D'-m
CE
=
'E'-$28
CF
=
'f'-m
C6
=
■'iy-m
CH
=
'■H'-I29
CI
=
'['-$■29
CJ
=
'J' -128
CK
=
•■■k'-*-29
CL
=
'I'-m
CM
=
'■H'-$20
CN
=
'N'-$2B
CO
=
'n'-«20
CP
=
'p'-«e
CO
=
■■■0'-$29
CR
r
'R'-$28
CS
=
'S'-4-29
CT
=
'T'-I28
CIJ
=
'U'-42i3
cy
=
'U--42e
O-J
=
'W'-$29
ex
=
'X'-J28
CY
=
■•■Y'-$29
cz
=
'•Z'-I28
C03L
:=
':'-$20
\m£
:m iTBis
1
LO
=
$CB
HI
=
m.
PLOTX
=
4CD
PLOrr
=
4CE
LOHLO
=
$CF
HIHLD
=
■tD8
mm
=
$01
mjim
=
■JD2
TIMER
=
$03
DEADFG
=
$D4
PX
=
$05
PY
r
$D6
XI
=
$07
YI
=
$D8
MISSLS
PL8
PLl
PL2
PL3
DI3P
Pf«REA+384
PMAREA+512
PWiREA+648
P^ttREA+768
PMAREA+896
$3088
LOC $1488
;PR03RAH START
2SCLP2
jSYSTEM EQUATES
^EY
CWSOL
PM8ASE
CHBASE
RAfJOm
COLBK
oiPFe
COLPFJ
D1PF2
C0LPF3
AUDCI
AU0C2
ALiOC3
AUDC4
AIJOFl
AU0F2
AIJ0F3
AUDF4
AUDCTL
PRIOR
AHRACT
WIACTL
DLISTL
GRACTL
WIEN
PC0LR8
C0LPH8
COLPHl
caPM2
COLPfIS
HPf]SP8
HPOSPl
HP1D3P2
HP0BP3
HPOSMB
HITCLR
pm
PIPF
P2PF
P3PF
P0PL
P3PL
STICK ■■
STRIG ■■
$2FC
$D81F
$0487
$82F4
$028A
$E45C
$E45F
$2C8
$2C4
$2C5
$2Cs
$2C7
$0281
$0203
$0285
$0207
$0208
$0282
$0284
$D20i
$0288
$826F
$40
$22F
$239
$0810
$O40E
$0812
$2C8
$2CI
$2C2
$2C3
jMISCELLANEUJS HEMORY \mr£
^1AREA = $1009
= $0801
= $0082
= $0003
= $0064
= $08 IE
= $0094
= $0885
= $0904
= $0887
= $O08C
= $D80F
= $278
= $284
ORG $6000
S3
;THIS CODE, WHEN CALLEO BY BASIC, WILL
;Ha'E THE 'FILL 'ER OP'' CODE TOITS
;PROPER LOCATHDN ($1489) AND EXECUTE IT.
I^'ROG
DDPYLP
PLA
PLA
3TA
PLA
3TA
LOA
3TA
LOA
3TA
LDY
LOA
STA
LOA
qLC
ADC
STA
LOA
ADC
STA
LDA
CLC
ADC
STA
LDA
ADC
STA
mp
Bf€
LDA
OiP
8NE
$31
lt$88
$32
)t$14
$33
lie
f$38),Y
($82) ,Y
$39
<tl
$88
$81
«8
$81
$82
ttl
$32
$83
m
$83
«DIR,/256
COPYLP
$82
#DIR&255
COPYLP
;DISi:>^RD
■PULL THE
;ADDRE3S OF
jTHE HOLDING
; STRING.
;SET UP
jDESTINATION
iADDRESS m
■;PA6E ZERO.
jCOPY THE BLOCK
;0F MBIORY.
AT E^jO YET-:'
NO'
WELL, mYBE.
AT B^D''
NOPE!
imiN PROGRW STARTS HERE
; ASSEMBLER WILL
;PLrr IT HERE
START JSR
LDA
STA
LOA
STA
STA
JSR
LDA
STA
LDA
STA
LDA
LDX
ZSCLP STA
STA
DEX
BPL
LDX
$E465
lt$]l
PRIOR
HI
SHOOFF
FILLW
PfCLR
UA
STRH6T
#128
STRHOR
CMSLP
#4
SC0LIN+4,X
SC0LIN+15,X
ZSCLP
«5
;!NIT SOWS
;P/M PRIORITY
;DWT SHOJ
; PLAYER OR STAR
;UE STILL MUST
; CLEAR P/M AREA
jAND SET UP THE
jSTAR'S HEIGHT
iAf^D
iHORIZiMAL POSITIW
jNW LET'S
iZERO OUT
;THE SCORE
;AREAS!
phi:lr
PHICLR
STA
DEX
8PL
LDA
STA
STA
STA
STA
STA
STA
STA
STA
LDX
STA
DEX
BPL
STA
LOA
STA
ORA
STA
LDA
STA
LOA
STA
LOA
STA
LM
STA
LDA
STA
LDA
STA
LOA
STA
LDA
STA
LOA
STA
LDY
LDX
LDA
JSR
LDA
STA
LW
STA
LDA
STA
LDA
STA
..IMP
LDA
LDX
STA
STA
STA
STA
STA
3C0LN2+r2,X
ZSCLP2
m
FILLCfJ
DEADFG
NOCCHG
HITCLR
D^WCTL
NMIBI
HASDRN
AUDCTL
m
SCORE, X
CMSLP
LB^EL
#3
LIUES
»$90
SC0LN2+1?
S$0A
COLPF0
«$24
COLPFl
#$94
C0LPF2
#$C4
C0LPF3 .
#8
COLBK
#$76
C0LPH3
#$34
C0LPM8
»DLlST4-255
DLISTL
IDLIST/25i
DLISTL+1
«irfl^RPT&255
#INTRPT/256
#6
SETU&;
IPMAREA/256
Pf-1BASE
#$2E
DflACTL
#$3
GIWCTL
«$40
miBJ
CLRDSP
#0
#127
MISSLS, X
PL8,X
PL1,X
PL2,X
PL3,X
;THESE ITEMS
;MUST BE SET
■TO ZERO ON
; STARTUP OR
■ELSE UE'LL
•Mm UP UITH
jWSTY THINGS
;WPPBI!NG'
;LET'S ZERO
-m THE SCORE
sCOLtTTER...
iiWD LEVEL «'
;UE START WITH
;3 LIUES
■Af^D PLIT THEM IN
iTHE SCORE LINE
iNEXT WE SET UP
;THE COLORS WE
iUm TO USE.
iWE'D BETTER TEL!.
■JHE CilMPLrrER WHERE
OUR DISPLAY LIST
.IS LOCATED'
iTELL WHERE THE
VERTICAL BLANK
INTERRUPT IS
MD SET IT!
HERE'S OUR P.'M
.GRAPHICS AREA'
iTURN ai THE
m DMROL
.GRAPHICS COf'ITROL'
; STABLE 'm
;CLB^R OUT
iTHE P,'H AREA;
;MIS3ILES,
iPLAYER e,
;PLAYER 1,
; PLAYER 2,
;AND PLAYER 3!
CO
c
m
DEX
m£ PMICLR
RETUras RTS
PLOT ADDRESS MLCULATOR
jLGOP LWIL DCNE
;UE'RE DWE!
MULTIPLY PLOrr BY 49, THEN CALCULATE ADDRESS
OF THE SCREEN MEHORYTO BE ALTERED.
^LOTCL
LDA
ASL
STA
LDA
STA
ASL
ROL
ASL
LDA
STA
ROL
LDA
STA
ASL
ROL
ASL
ROL
LDA
CLC
ADC
STA
LDA
ADC
STA
LDA
CLC
ADC
STA
LDA
ADC
STA
LDA
AND
TAX
LDA
LSR
LSR
CLC
ADC
STA
LDA
AOC
STA
RTS
PLOTY
A
LO
#8
HI
LO
HI
LO
LO
LOHLD
HI
HE
HIHLO
LO
HI
LO
HI
LO
LOHLD
LO
HI
HIHLD
HI
«DISP4255
LO
LO
i)DISP/25d
HI
HI
PLOTX;
#3
PLOTX
A
A
LO
LO
HI
«e
HI
;«2
;»32
:+«e=*48
;+DISPLAY START
;f«SK X pmnmi
:L0 & HnWJ HOLD
iTHE ADDRESS'
■EXIT!
jaEAR THE DISPLAY MEMORY
liRDSP
LOX m jTHIS ROLITINE WILL
STX PLOTX jCLEAR THE SCREEN RAM.
LOX m
; IT GETS THE ADDRESS
DL00P2 STX PLOTY
;0F THE BEGIWING OF
JSR PLOTCL
;EACH OR. 7 LINE
LDX PLOTY
jTHEN ZEROES OUT
LOA «00
I EACH OF THE
LDY )t39
;48 BYTES (6-39)
DL00P3 STA (LO),Y
;!N THE LINE.
DEY
BPL DL00P3
INX
CPX m6
mE DLO0P2
\dm THE COLOR 1 BORDER
' LDA m
;THIS ROUTINE
STA BORNW
i DRAWS THE 4 LINES
BORDER LDX B0RNLI1
;THAT (iAKE UP THE
LDA BXSTRT,X
;UHITE GR.7 BORDER
STA PLOTX
m THE SCREEN.
LDA BYSTRT.X
STA PLOTY ■
LDA BXINCX
STA BOINCK
LW BYINC.X
STA BOINCY
LDA BORCNT.X
STA BDQ(T ■
DRAWLN JSR PLOTCL
LDA COLORl ,X
LDY «e
ORA (LO),Y
STA <LO),Y
LDA PLOTX
CLC
ADC BOINCX
STA PLOTX
LDA PLOTY
CLC
ADC BDIMCY
STA PLOTY
DEC BDiM
9JE DIWULN
DEC BORNIJi
BPL BORDER
■THIS SECTION STARTS
OFF EACH LEVEL
' LDA #88
; POSIT I m THE
STA PX
•PLAYER
LDA #84
STA PY
LW IBJEl
; INCREMENT THE
CLC
jLEUEL NlffBER
AOC #1
STA LWK
LDA #9
;2ER0 OLrr
STA CURLO
;CURR&TT TALLY
STA CURHI
STA HIWK
LDA #$FF
STA SLLOC
JSR O-WDEC
LDA DECltWL+1
ORA #*98
STA SC0LN2+3
LDA DECIIttL
ORA #*98
STA SC0LN2+4
LDX LEVEL
LDA TGTLO,X
STA LfiJK ■
LDA TGTHI,X
STA HIUK
LDA STARSP.X
STA STRSPD'
LDA M
STA SLLOC
JSR QWDEC
iWORK AREA
:TELL DECIMAL CONVERTER
:NOT TO PLACE RESULT
■COMJERT LP.'EL «
iGET DECIMAL LPJEL I
:ADD COLOR
;PUT IN SCORE LINE
jSAME FOR 2ND
;LE'JEL #
;DIGIT
:6ET THIS LEVEL'S
jPARWETER'S
■o
>
m
o
4^
;SHOW TARGET *^OIM
;aEAR OUT THE TRACKUffi TABLE TffiT
irbiehbers uhere the player mo^'ed
Jlrtrk
CLRTLP
GETSTK
LDA «B
STA SHOOFF
ta:x
STA 0IR,X
;CLEAR DIRECTION
STA LGTR,X
m LENGTH Ef^RIES
od:
BNE CLRTLP
STA MWIX
ICLEAR MOtJEMENT INDEX
STA DRAWFG
;(WD DRAU FLAG
LDA PAUSE
iGAME PAUSED-'
BiE GETSTK
;YES, LOOP mi WAIT.
LDA #$FD
iDO 'WRBLE' SOUND
STA AUDFl
;LISIN6 SOUND
LDA #$FE
iCHWWELS 1-3
STA AUDF2
LOA #*FF
STA AUDF3
im #$A3
STA AUDCl
STA AUDC2
STA AUDC3
LDA #0
;N0 AnRACT MODE'
STA AHiWCT
LDA OEADFG
iDIO STAR HIT US'
BEQ ALIVE
■NO'
LDX LE1./EL
■IT HIT US-
LDA KILLFG,X
;IHCONDITIff#iL KILL'
m£ JCRSH
■YES' WE'RE DEAD"'
LDA PX
;N0, IF WE'RE W A
STA PLOTX'
lUHlTE LINE (COLOR I)
LDA PY
iTHEN WE'RE ALl'JE'
STA PLOTY
JSR PLOTCL
o
p
o
o
Tl
c
o
3
LOY m
AND (LO),y
LDA BITSGN.X
PW
;WD SA'JE IT'
AND (LO),Y
mP COLOR 1 ,X
LDA 3TRIG
ilRIGGER PRESSED-:'
;0f^ COLOR P
Bf^E NOTDRt^
;N0'
BEQ ALIUE
|YES (WHEW! )
PLA
;0K TO DRAU'5
JCRSH JMP CRASH
;G0 KILL PLAYER.
mi JGS
;N0 ' '
ALIVE LDA HOiJTIH
; PLAYER MQiJING?
JHP DRAWIN
;YES, GO DRAlil.
BEQ GOTSTK
;YES-GET STICK.
NOTDW
PLA
iNOT DRAWING-ARE U
■JHP MOv/STR
;NU, HffJE STAR.
W COLOR!. ,X
•,m COLOR 1^
JGSTK JMP GETSTk
; GO SET STICK
BNE JGS
;N0, TRY AGAIN
iARE WE MOi.'ING
GOTSTK LDA M
;SET UP THE
LDA CIW
STA HffJTlM
■MOiJEHEffr TIMER
LDX CKVX
iOr^TO ANOTHER
LDA STICK
;6ET THE STICK
mP COLORl ,X
; COLOR r^
STA STKHLD
;^^D mJi IT
B€ JGS
;N0' TRY AGAIN,
TAX
iTHEN LOOK UP
LDA CtCX
;ALL'S WELL...
LDA XD,X
;X DIRECTIW
STA PX
; UPDATE PX
CLC
LDA CKY
;ANO
ADC XD,X
STA PY
■PY
;GEf STICK.
STA XI ■
;AND
jes
JHP GETSTK
LDA YD,X
;Y DIRECTION
CLC
■THIS ROUTINE WWDLES
THE DRAW FLJCTICN.
ADC YD,X
STA YI ■
DRAUIN
LDA DRAUFG
;ALREADY DRAWING-'
ORA XI
iWr MO'JEMENT''
m£ DRftJOK
;YES^
BEQ JGSTK
;N0, TRY AGAIN.
STA nam
;N0, THIS IS THE
LDA PX
jINCRBIENT
LDA STKHLD
;FIRST TIME-SET UP
CLC
; PLAYER X
STA DIR
; INITIAL DRAWING
ADC XI
jPosiTiofj mo
LDA ttl
j'.WRIABLES.
STA m
IHOLD IT.,.
STA ORAyPG
CMP 8159
(OFFSCREEN'
STA mSDRN
eCS JGSTK
;YES'
LDA PX
STA PLOTX
;N0, SWE IT
STA INIX
SEC
STA HINX
SBC XD,X
STA WXX
STA PXUC
LDA PY
LDA PY
lINCREHETfT
STA INTY
CLC
■PLAYER Y
STA MItfY
ADC YI
iPOSITim AND
STA MAXY
STA m
iHOLD IT...
DRWOK
LDA CIW
;DID UE
fflP 185
iOFFSCREEN'
LDX CkVX
iRW irfTO AfJOTHER
BCS JGSTK
;YES'
iW C0L0R2,X
; COLOR 2'
STA PLDTY
;N0, m>i IT
B^E NOCRSH
;N0. WE'RE OK.
ICRWIAASSSHHH'
SEC
JMP CRASH
SBC YD,X
NOCRSH
LDX MOt'IX
i UPDATE THE
STA FYliC
LDA STKHLD
; TRACKING
JSR PLOTCL
iLOCATE NEW PLAYER
CMP DIR.X
ITABLES WITH
LDY m
jPOSITIW.
BEQ :3AfiD!R
;DIRECTI»J
LDA BITSm,X
INC mm
ilNFORhWTlOfJ.
#10 (LO),Y
INX'
STA CK'J "
|SA^,'E THE 'LOCATE' .
STA DIR,X
3TX CI?.'X
LDA m
LDA pmt
; CHECK THE
STA LGTH,X
STA PLOTX
i POSIT I W NEXT
SAMDIR
INC LGTH.X
LDA PfJC
;T0 THE ONE WE'RE
LDA 83
STA PLOTY
-Mi IN...
STA BDC+JT
JSR PLOTCL
LDA PX
;N9J PLOT THE
LDY m
STA PLOTX
iLINE WE'RE
LDA BITSm.X
LDA PY
jDRAWING...
STA PLOTY
CCLOOP
JSR PLOTCL
LDY #8
LDA (LO),Y
md BITOFF.X
ORA C0L0R2,X
STA (LO),Y
DEC BDCfJT
BEQ CKCOLR
LDY mm
LDX OIR.Y
LDA XD,X
CLC
ADC PLOTX
STA PLOTX
LDA YD,X
CLC
ADC PLOTr
STA PLOTY
JMP CCLOOP
CKCOLR
LDA PLOTX
STA PX
I31PMAXX
BCC TMINX
STA l*iX'X
JMP CHKYm
TMINX
CMP MINX
BCS CHKYfff
STA MINX
CHK^iW
LDA PLOTY
STA PY
OIPHAXY
BCC TMINY
STA MAXY
JHP EhJWfi
TMIW
CMP MINT
BCS B^Wfl
STA MINy
ElOtl
LDX ci?.;x
LDA CK'J
CMP COLORl ,X
BEQ ENDLIN
JMP GETSTK
ENDLIN
LM 86
STA Df¥WFG
JSR SEARCH
LDA CURLO
STA LWK
LDA CURHI
STA HIWK
LDA 815
STA SLLOC
JSR aWDEC
LDA 81
STA RDRCOL
JSR REDRAW
LDX LBJEL
LDA CURLO
I IN COLOR
; UPDATE X P03.
;CHECK MINIMUM
;^^D MAXIMUM
IX k Y '-VALUES
if^^D UPDATE IF
;NECES3ARY
|D!D WE DRAW
SMO
i COLOR !■'
;YES' mo OF LINE'
;N0, GO GET STICK.
lUEARET^T
IDRAWING f*IY!i0RE
iSEARCH AND FILL"
;GET CURREhJT WLUE
;P1JT AT 15TH
;POS. IN SCOLIN
ICIM'ERT TO DECIMAL
iN(W REDRAW THE
; PLAYER'S PATH IN
iCOLOR ] (WHITE).
; CHECK TO SEE
ilF WE'ME HIT
NB-iUv'L
SEC
SBC TGTLO.X
STA LOUK
LDA CURHl
SBC TGTHI.X
STA HIWK ■
BPL NEULML
JflP CLRTRK
LDA LPJEL
Cf-IP #15
BEQ r-JOLINC
INC LBiEL
; INCREASE SCORE HERE
NO. INC
SCOLP
NOCARy
NX3P0S
SHSLP
ASL
ROL
LWi
STA
JSR
LDX
LOY
LDA
CLC
ADC
m?
BMI
SEC
SBC
STA
INC
JMP
STA
im
DEX
BPL
LDX
LDA
ORA
STA
DEK
BPL
LDA
STA
STA
JSR
LDA
STA
LDA
STA
LDA
STA
JdP
LiWK
HIUK
«$FF
SLLOC
ChWDEC
15
m
DECIMAL, Y
SCORE ,X
NOCARY
m
SCORE, X
SCORE"! ,X
NXSPOS
SCORE, X
SCOLP
)f5
SMRE.X
tt$18
SC0LN2+12,X
SH:5LP
»1
FILLW
SHOOFF
PHCLR
ft64
STRH6T
»128
STRHOR
#6
FILLCW
CLRDSP
;THE TARGET.
;HIT TARGET"?
; YES-NEW LEVEL'
■NO, GO CLEAR TRACK
;IF LB^EL < !5
ITHEN
INCREMENT
jLPv'EL
;SC(RE INC =
jTGT-CUR * 2
mn PLACE
;THE RESULT'
jCW^^ERT TO DECIMAL
;AND ADD TO SCORE
TIMRST
DEAOCC
•,nm PLACE THE
;SCORE IN
jSCORE LINE #2
;STOP UB! FOR
;A MOMENT
i CLEAR P/M AREA
; INITIALIZE
;THE
;STAR
jPOSITIW
;UBI ON AI^IN
:G0 CLEAR DISPLAY'
CKSTRT
RELEAS
STA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
did
STA
LDA
Af€>
ORA
STA
STA
LDA
»€
DEC
BPL
DEC
LDA
ORA
STA
i>tP
Bf€
LDA
STA
LDA
STA
LDA
m\)
mE
LDA
AND
BED
LDA
STA
LDA
STA
.JHP
AUDC2
AUDC3
«1
NOCCHG
«15
DEDBRT
«5
TIHER
OEOBRT
AUDCi
RWnIDCW
t»$lF
AIJDFl
RANDOH
#$F8
DEDBRT
QlPFl
C0LPM3
TIMER
DEADCC
DEDBRT
TIMRST
LI'v'ES
LIUES
#$98
SC0LfJ2+19
mn
NOTDED
«6i:HSG&255
SCOL
«Gi31S6/256
SCDL+1
COt-JSOL
«1
CKSTRT
CWSOL
«1
RELEAS
«SC0LRJi-255
SCDL
ttSCOLIN/256
SCDL+1
START
NO PLAYER COLOR
CHANGE IN 'v'BJ
SET BRIGmiESS OF
PLAYER DEATH.
SET DEATH TIMER
TO 5 JIFFIES.
MiM BRIGHTNESS
TO DEATH SOLKD UOLUME
GET RANDiDM
DEATH SOWD
FREQUENCY
GET pm^m
DEATH COLOR
ADD BRITE
PUT IN LINE COLOR
mi) PLAYER COLOR
TIMER DM YET'
NO, GO CHANGE COLOR,
DEC-RBIE^ff BRIGHTNESS
IF MORE, GO DO IT.
1 LESS LIFE
GET # LI'v'ES
ADO COLOR
AMD DISPLAY'
ZERi] LI'JES-;^
NO'
WE'RE CL>1PLETELY
DEAD, mm
'G^IE iMR'
MESSAGE
lA^IT FOR START
KEY...
NOT PRE3SED--L00P.
KEY PRESSED, NCW
WAIT FOR RELEASE'
NOT RELEASED YET'
PUT SCORE
LINE BACK
;IN DISPLAY
SLIST...
;(W0 START i3AME'
JCTRK
STA PLOTY
JSR PLOTCL
LDY m
LDA BITSl^nX
AND (LO),Y'
;IS LOCATim OT^
fflP COLORi .X
; COLOR 1?
m£ nmiQt
■,N0, TRY A&^IN.
JSR PHCLR
ilT'S OK, CLEAR P,H
LDA PLOTX
iSA'vIE
STA PX
;THE PLAYER'S
LDA PLOTY
iNEW
STA PY
; COORD imTES.
LDA »6
iREDR« THE
STA RDRCOL
i PLAYER'S TRACK
LDA HASDRN
■IN COLOR 6
BEQ JCTRK
JSR REDRf^
LDA INIX
;THIS PART IS
STA plots;
;NEEDED TO PLOT
LDA INIY
;A COLOR i BLOCK
STA PLOTY
;AT THE START OF
JSR PLOTCL
iTHE PLAYER'S TRACK
LDY m
lAFTER IT IS ERASED.
LDA SITOFF,X
;(NCeODY'S PERFECT')
AfJD (LOi.Y'
ORA COLORl ,X
STA (LO),Y'
LEW «24'
;RESTOR£ DRAW LINE
STA COLPFl
■COLOR
LDA m
STA NOCCHG
STA HITCLR
STA DEAOFG
JMP CLRTRK
jAf'iD GO START NBJ TR
>
o
m
o
03
■THIS RiUTIfC USES THE TRACKING TABLES,
:D!R AND LGTH " """'
; PLAYER DREW.
iDESIRED.
TO REDRAW THE LINE THE
RDRCOL INDICATES TIC CiXOR
O
P
O
O
■D
C
H
Z
O
THIS SECT I m PLACES PLAYER AT A RfWDOM
LOCATIW IF THERE ARE MORE LI'JES LER.
kdmi
REDXLP
jTHFS SECTIOfJ rtWDLES PLAYER'S DEATH
NOTDED
N&iLOC
CSH^r
6RA3H
LDA m
STA AUDCI
;N0 WARBLE SOU^JD
LDA m
STA SHOOFF
LDA RAf^lDW
md lf$FE
i3iP «159
BCS NBJLOC
STA PLOTX
LDA Rf*€)OM
fWD «$7E
CMP )f85
BCS CSHY
•MVl SHOW
■PLAYER
;6ET RA^^IDOH X
;MU3T BE PJBi
\mD m SCREEN
;GET Pj^DOM Y
jMUST BE BJEN
■Am m SCRE&I
REDYLP
TIMES3
LDA
STA
LDA
STA
LDA
STA
LDX
LDA
■STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
INIX
REX:
INIY
m
V
/\
X
DIR,X
REDIR
LGTH.X
L6THY
«1
Y
«3
TIMES
RE<
PLOTX
RBi'
CO
c
m
ENDRD
RDCl
3ETNRP
NXTY
NXTX
JRXLP
STA
JSR
LDY
IDA
Br€
LDA
AND
STA
jr^p
LDA
STA
RTS
LDA
*J0
ORA
STA
DEC
BEQ
LDX
LOA
CLC
m:
STA
LOA
CLC
ADC
oTA
•JHP
INC
LOA
mp
BEQ
BCS
..!HP
INC
\M
CJ-1P
BEQ
BCS
■JtiP
PLOTY
PLOTCL
m
RDRCOL
RDCl
BITOFF.X
(LO),Y
(LO),y
SETNRP
m
DRAIJFG
B!TOFF,X
(LO),Y
COLOR! ,X
au),Y
TIHES
NXTY
REDIR
REX
XD,X
m.
REY
YD.X
REY
TIHES3
V
Y
L6THT
JNRD
NXTX
REOYLP
HOUIX
JRXLP
ENDRD
REDXLP
CKH2
NOSUB
SUBEf-1
SHi:W!T
SHOLP
SHB-ID
LDA
O^P
BCS
DEX
BPL
JMP
LDA
SEC
SBC
STA
LDA
SBC
STA
INC
m?
LDX
LOY
m\
LDA
ORA
STA
INY
DEX
BPL
RTS
La*
LU.'ALS.X
SUBEN
CKMAG
SHiaJIT
La#,
LOi,'ALS,X
Li3UK
HIWK
HIiJALS,X
HiyK
DECIhttL,X-
amG '
«4
SLLOC
SHEND
DECIMAL, X
nm
SC0L1N,Y
SHOLP
THIS ROUTUC MffJES THE STAR AROLIJD m
THE PLAYFIELD. THE STAR IS ROTATED AfJD
PLOTTED (IN A PLAYER) IN THE UBI,
;2-8YTE DECIMAL COf-WERTER. Ca-WERTS
iA 2-BYTE Bir-ttRY NLMBER TO A 5-BYTE
•DECimL NLIIBER. WILL PLACE THE
iDECIMAL NIHBER IN SCOLIN IF DESIRED
;(3LL0C DETERMINES POSITIW).
WAYCLR
|>WDEC
CDLP
c^w>G
LDX «4
LDA «e
STA DECimCX
DEa
BPL CDLP
LDX tt4
LDA HIWK
CWP HIWLS.X
BEQ cmi
BCS SUBHi
6CC NOSUB
ADC STRDTY.X
STA PLOTY
JSR PLOTCL
LDV m
LDA BITSW.X
Af'ID (LO),Y
BEQ WAYCLR
\mi COLLlSlOf^'
iNO, ALL CLEAR'
LDA #15
;H1T SOMETHING,
STA esaiT
; START Blf1P SOUND f
m£ NEWDIR
•GET Hm DIRECTIOf^
LDA PLOTX
;ADJIJ:3T STAR
CLC
jCOOROMTES
ADC *t44
■BACK TO P/M
STA STRHOR
;COORDMTES
LOA PLOTY
;FROH PLAYFIELD.
CLC
ADC m
STA STRHGT
LDA THPDIR
;SET DlRECTim
STA STRDIR
JMP GETSTK
;AND LOOP
MWSTR
LDA :3m IM
;TIME TO HM-'
;3PECIFICQUESTIW
BEO MSTR
;YES, GO DO IT
■CARE OF A.N.A.L.0
JHP ijETSTK
;NO,GET STICK
HSTR
LDA STRSPD
;SET MffJEHENT TIMER
kARCH
LDA #1
STA :3ffT!H
;WITH STAR SPEED
STA FILLON
LDA STRHGT
;ADJUST Pm
LOA #8
SEC
{COORDINATES TO
STA
SBC #13
jmTCH PLAYFIELD
LDA STRHOR
STA STRLY
;PLOniNG
SEC
LOA STRHOR
;COOROIf*:iTES,
SBC #44
SEC
STA SX
SBC #44
LDA STRHGT
STA STRLX
SEC
LDA RAfJDOM
;WAfJT TO CHAf-JGE
SBC #13
mp #248
;THE STAR'S DIRECT I »!'
STA 3Y
Bcc m\m
;NG. USE SAME.
;GET RANDCH
FINDCL
LDX D
NEWDIR
LDA midm
LDA SX
md #7
;D] RECTI OfJ
CLC
JMP DIRCHK
ADC 3XD,X
SAMSTD
LDA STROIR
;GET OLD DIRECTim.
STA SX
DIRCHK
TAX
; CHECK TO SEE
STA PLOTX
STA TMPDIR
;IF STAR WILL
LDA SY
LDA STRLX
J BUMP UffO m
CLC
CLC
;PLAYFIELD
ADC SYD,X
ADC STRDTX,X
I OBJECT.
STA 3Y
STA PLOTX ■
STA PLOTY
LDA STRLY
JSR PLOTCL
CLC
LDY #6
jSEARCH FOR FILLABLE AREA
•THIS SECTIOt^ SEARCHES FOR THE AREA TO
;BE FILLED. IT IS SO CWPLICATED THAT
;EXPLA^^ATIW OF ITS FINER DETAILS
jWOULD BE ALMOST IMPOSSIBLE WITHOUT
iWRITING ANOTHER DIMPLETE ARTICLE. AT
■AW RATE, IT WORKS. THOSE WITH ANY
3PECIFICQUESTI06 SHOULD WRITE fC,
" ' " G,
LDA <10).Y
md BITSW.X
mP COLORl ,X
BEQ F1NDC2
W C0L0R2,X
Bf^E FINDCL
LDA #8
STA TD
.JMP F01UD2
F1NDC2
LDA D
STA TD
JSR DECD
FC2A
JSR 3RCHLC
CMP COLORl ,X
BNE FC2B
JSR GRABEM
■JMP FINDC2
FC2B
CMP C0L0R2,X
BNE FC2C
JSR GRABEM
JMP OUTLIN
FC2C
JSR INCD
■JMP FC2A
F0UND2
LDA #6
STA TRIES
JSR DECD
F^e2A
JSR 3RCHLC
CMP C0L0R2,X
a^E FND2B
JSR GRABEM
JMP fQ\MD2
FND2B
LDA TRIES
CLC
ADC #1
STA TRIES
CMP #3
BEQ FINDC!
JSR INCD
JMP FND2A
FINDCl
LDA D
STA TD
JSR DECD
FCIA
JSR SRCHLC
CNP COLORl ,X
BNE FCIB
JSR GRABEM
.JMP FINDC2
FCIB
JSR INCD
.JMP FCIA
OLtTLIN
JSR PLSXSY
LDA #0
STA TRIES
OUTLA
JSR SRCHLC
mP COLORl ,X
BNE OUTLB
JSR GRABEM
■JMP OUTLIN
OUTLB
LDA TRIES
OUTLD
0UTLD2
OUTLE
SRCHLC
Lo:T;cr
NOREAD
GRABEH
INCD
DECD
CLC
ADC tfl
3TA TRIES
CflP «4
BEQ OITTLD
JSR INCD
JHP OUTLA
JSR LOCTX-if
W C0L0R2,X
Bf^lE OIJTLE
JSR FILL
LDA #e
STA FILL»<
RTS
JSR INCD
JSR SRCHLC
.JMP OiJTLD2
LOX TD
LDA S>!
CLC
ADC SXD,X
STA TX
STA PLOTX
LDA SY
CLC
ADC SYD,X
STA T(
STA PLOTY
LM PLOTX
a-1P »159
BCS NOREAD
LDA PLOTY
|>1P #85
BCS NOREAD
JSR PLOTCL
LDY m
LDA (LO),Y
m BITS»^,X
RTS
LDA #8
LOX m
RTS
LDA TD
STA D
LDA TX
STA SX
m TY
STA SY
RTS
LDA TD
CLC
ADC «!
fWD «3
STA TD
RTS
im TD
SEC
SBC «1
STA
RTS
PLSXSY LDA
STA
CHP
ecu
STA
.JMP
TM1M;(2 Ct-IP
BCS
STA
CKYMi2 LDA
STA
mp
BCC
STA
JHP
iliP
BCS
STA
ENDMM2 JSR
LDY
LM
md
ORA
STA
RTS
TM!NY2
#3
TD
SX
PLOTX
WXX
TMINX2
mxx
CKYffl2
HINX
CfCYMH2
MM
PLOTY
ma;<y
TM]hfY2
m;<Y
O^0HM2
HINY
ENDW2
HINY
PLOTCL
m
BITOFF,X
(LO>.Y
C0L0R2,X
(LO),y
CLRC2T
LOCLPl
L0i:LP2
FILLIT
FILL ROUTINE
AS WITH THE -SEARCH' SUBROUTINE. THE
FILL SUBROUTINE IS FAR TOO CWPLEX TO
EXPLAIN HERE. THIS FILL IS B-JTIRELY
DIFFERENT FROM THE SYSTB-I'S FILL
ROUTINE, AS IT WILL FILL ANY SWPE
imi IS OUTLINED IN COLOR 2.
FILL
Lw m
•,V.}m OFF
STA AUDC2
;SOWD CHANflELS
STA AU0C3
;2 Af© 3.
LW MAXY
UNITIALIZE
SEC
iTHE FILL
SBC MINT
; SOUND
STA FILFRQ
■FREQUENCY.
LDA MINX
SEC
SBC SI
STA MINX
STA FX
LW> MINY
STA FY
SEC
SBC SI
STA MINY
LDA mxx
CLC
ADC SI
FOLLOW
L0CLP3
L0CLP4
LOCATE
STA MAXX
LDA mXY
CLC
ADC SI
STA MA;<Y
LDA m
STA SCTALY
LDA U
STA C2TALY
JSR LOCATE
!>1P S2
M LOCLP!
INC C2TALY
JSR LOCATE
tW S2
BEQ L0CLP2
Af-ID Si
»€ CLRC2T
im C2TALY
fflP SI
BEQ FILLIT
JSR LOCPR'v'
BEQ CLRC2T
LDA FX
STA PLOTX
LDA FY
STA PLOTY
JSR PLOTCL
SO
ao).Y
COLORS, X
LDY
LDA
ORA
STA (LO),Y
INC SCTALY
JSR LOCATE
m- #0
BEQ FILLIT
At-JD SI
BNE CLRC2T
LDA SI
STA C2TALY
JSR LOi:i^TE
CMP S8
BEQ L0CLP3
AT-ID SI
m£ CLRC2T
INC C2TALY
.JHP FOLLW
LDA C2TALY
(W SI
BNE L0CLP4
.JMP CLRC2T
JSR LOCPR'v'
mp BITSW,X
BEQ FILLIT"
JMP CLRC2T
LDA FX
CLC
ADC SI
NOFFDC
FILEND
rOFX
N0TC2
NOTCJ
STA
CMP
mE
LDA
CLC
ADC
STA
LDA
ADC
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
BEQ
DEC
LDA
CLC
flDC
STA
i3iP
BEQ
LDA
CMP
BNE
PLA
PLA
JMP
PLA
PLA
RTS
LDA
STA
LM
STA
JSR
LDY
LDA
(WD
Off
BNE
LDA
ORA
STA
INC
LDA
RTS
W
m£
LDA
RTS
mp
FX
MAXa
STOFX
CURLO
SCTALY
CURLO
CURHI
m
CURHI
S8
SCTALY
MM
FX
SO
C2TALY
S$86
AUDCl
FILFRQ
AUDFl
NOFFDC
FILFRQ
FY
SI
FY
max:y
FILEND
FX
MINX
STOFX
CLRC2T
FX
PLOTX
FY
PLOTY
PLOTCL
SO
BITSCN.X
(LO),Y
C0L0R2,X
N0TC2 ■
BITSW.X
(LO),Y'
<LO),Y
SCTALY
S2
COLORl ,X
NOTCl
SI
SB
C3
LOCPRU
NOLOCP
m£
RTS
LDA
RTS
LDA
STA
LDA
SEC
SBC
CMP
BEQ
STA
JSR
LDY
LDA
WD
RTS
LDA
LDX
RTS
C3
S3
FX
PLOT.K
FY
SI
MINY
NOLOCP
PLOTY
PLOTCL
se
BITS»J,X
(LO),Y
;'v'BI ROUTINE
IMTRPT
NOPRES
NOPAUS
NOBS
NODEC
NOFILL
NffllTP
NOHITL
LDA KEY
CflP #$21
mE NOPRES
LDA SfFF
STA KEY
LDA PAUSE
EOR S$FF
STA PAUSE
LDA PAUSE
BEQ NOPAUS
.JHP xm&j
LDA BSCrfT
Kil NOBS
ORA S$A8
STA AUDC4
LM #$88
STA AUDF4
DEC BSCf{T
LDA TIMER
BEQ NODEC
DEC TIMER
LM FILLW
BEQ NOFILL
JMP xmw
LDA SO
STA DEADFG
LDA P8PL
md S$88
BEQ NOHITP
INC DEADFG
LDA P8PF
md mi
BEQ WHITL
INC DEADFG
STA HITCLR
>
o
m
o
00
IS SPACE B^R
PRESSED'
NO, CHECK FOR PAUSE.
CLEAR OUT
KEY CODE,
COMPLEMENT
THE PAUSE
FLAG.
ARE WE PAUSED"'
NO'
PAUSED, Ni] UBI'
MORE BUMP SOU^Dv
NO, PROCESS TIMER,
MIX yOLlUE UITH
PURE TW,
SET UP BUMP
SOltJD FREQUENCY
f^^D DECREMBfT COUNT,
TI^€R DiSJN TO ZERO^
YES, DW-'T DECRBiENT,
DECRBiE^JT TIMER.
ARE UE FILLING'
NO, 00 REST OFUBI.
YES, EXIT 'JBl
CLEAR OUT
DEAD FLAG
HAS PLAYER 8
HIT PWYER 3'
NO'
YES"'
HAS PLAYER 8
HIT COLOR 2'
NO!
.YES!!'
;CLEAR COLLISIOfJ.
O
P
O
O
T)
c
o
en
c
m
LDA
BEQ
DEC
NCHDEC LDA
BEQ
DEC
WTDEC LDA
BEQ
DEC
JMP
STAROT LDA
STA
LDA
CLC
ADC
m?
BfJE
LDA
STOSTP STA
UBREST LDY
LDX
LDA
STA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
STA
LDA
LDA
CLC
ADC
STA
LM
CLC
ADC
TAX
LDA
STA
STA
STA
STA
LDA
HIWTIH
f#(DEC
MOivTlM
mm
MfTDEC
:SHTIH
STARCT
STAROT
STARCT
UBREST
ttl
STARCT
STRPOS
»1
«7
STOSTP
m
STRPOS
STRPOS
STRHGT
19
PLB-1,X
PL8+8,X
STARBl ,Y
PL8,X
STARB2,r
PL8+1,X
STARBS,Y
PL8+2,X
STARB4,Y
PLi3+3,X
STARB5,Y
PL8+4,X
STARBi,Y
PL8+5,X
STARB7,Y
PL8+6,X
STARB8,Y
PL9+7,X
STRHOR
HPOSPe
SHOOFF
EtWBI
PX
tt47
HP0SP3
PY
#$18
m
PL3-3,X
PL3-2,X
PL3+2,X
PL3+3,X
#$48
iMffJEMBiT TIMER ZERO'
;YES, DON'T DECREMEhlT.
;DECREHB-n TIMER.
J STAR MOi.'E TIMER imV
;YES, DOrrT DECREMENT.
; DECREMENT TIMER.
;STAR ROT. TIMER ZERO?
;YES, ROTATE STAR!
iDECREMENT TIMER
;AND SKIP ROTATHifrl.
;SET ROT, TIMER
:T0 1
jINCRB-eJT
iSTAR ROTATIiDN
iCOUfffER,
■ALLOW iHLY 8-6.
•ROT. COlf^T OK
;ZERi] ROT. COUf^ER.
SSA-JE ROT. POS.
:THIS SECTION
i DRAWS THE STAR
;IN PLAYER 9
;MEHORY USING
;THE TABLES
;■' STARBl' THRU
rSTARBb".
SET STAR'S
H0RI2. POS.
OK TO SHOJ PLAYERS'
NO, E<1T UBI
SET PLAYER'S
HORIZiMAL
•POSITION
;DRAU PLAYER
:1N PLAYER 3
;MEMORY
■DATA
lliLIST
STA PL3-1,X
STA PL3+!,X
LDA tttAB ■
STA PL3,X
LDA NOCCHG
mi. e-PJBI
INC C0LPM3
JNP XITVB*.'
{STAR PLAYER-MISSILE IMAGES
COLOR CHAf-IGE OK-'
NO, E<!T UBI
YES, CYCLE THE COLOR,
DIM WITH MBl!
SCDL
SCOLIN
SC0LN2
GmSG
■LB./EL
Igtlo
TGTHI
STARSF
KILLF6
DB $78 ,$70, $78
DB $4D,DlSre255,DlSP/254
DB $D,$0,$D,$D,$D,$D,$D,$D,$D,$D
DB $D ,$D ,$D ,$D ,$D ,$0 ,$D ,$D ,$D ,$D
DG $0,$0,$0,$D,$D,$D,$D,$0,$D,$0
DB $D ,3D ,$D ,$D ,$D ,ID ,$D ,$D ,$D ,$D
DB $D,$D,$D,$D,$D,$D,$D,$D,$0,$D
DO ID ,$D ,$D ,$D ,$D ,$D ,$D ,$D ,$D ,$D
DB $0,$0,$D,$D,$D,$D,$D,$D,$D,$D
DB $D ,$D ,$D ,$D ,$D ,$D .$D ,$D ,$D ,$D
DB $D,$D,$D,$D,$D,$20,$46
W SCOLIN
DB $4.4
m SC0LN2
DB $41,0LISTf(255,DLIST/256
CT.CG,CT,CC0L,8,9,B,6,8,e
0,iX,l:U,UR,CCOL,8,8,8,8,9
cL,c«,ccoL,e,e,e,cs,cc,co
CR,CE,CCOL,8,8,e,8,8,0,8,8
e,8,8,e,8,CG,CA,CH,CE,6
0,CiJ,CV,CE,CR,8,8,8,8,8
TABLES
OB
DB
DB
DB
DB
OB 64, l.i, 224, 48, 246, 212, 16,4
DB 248,224,212,224,68,168,112,212
DB 31, §■?, 46, 35,42, 43, 3?, 41 ,42'
DB 46,48,46,47,47,48,40'
DB 4,4,4,3,3,3,2,2,2,2,2,1,1
DB I,!,!
DB 0,8,1,8,1,1,8,1,1,1,1,8,8
DB 1,1,1
ZEROl
DB
8
SCORE
DB
e
SLLOC
OB
8
CURLO
DB
e
CIJRHI
DB
8
LEVEL
DB
e
PftiJSE
DB
e
HASDRN
DB
8
LQUK
DB
9
HI UK
DB
e
SCTALY
DB
8
LIMES
DB
e
! " ) " ! ■■■ ) " I '
CTARBl
STARB2
STARB3
STARB4
STARB5
STARPi
STARB7
STARB3
STARCT
STRPOS
STRHGT
STRHOR
STRLX
STRLY
TfFOIR
STRDIR
STRDTX
STRDTY
STRSPD
COLOR 1
C(I0R2
C0LOR3
BITSON
BITOFF
BX3TRT
BYSTRT
BXINC
BYINC
BORCNT
imm
BDINCX
BDINCY
BKNT
PXWC
PWC
SHOOFF
CtC<
CKY
INIX
INIY
MINX
MINY
MAXX
MAX'r
RE<
REY
X
Y
3X
SY
T>{
TY
FX
FY
TO
D
DB $31,$48,$20,$18,$03,$04,$e2
DB $42,$43,$28,$]8,$e8,$84,$C2
DB $24,$24,$13,$18,$83,$C3,$24
DB $18,$18,$1C,$1F,$F8,$38,$18
DB $1'3,$18,$38,$F8,$IF,$IC,$18
JO $24,$24,$C8,$88,$1B,$13,$24
DB $42,$C2,$84,$88,$18,$2e,$43
DB $8I,i82,$84,$88,$18,$2e,$48
DB 8
DB 8
DB 8
DB e
DB 8
DB 8
DB 8
OB 1,1,8,255,255,255,8,1
DB 8,1,1,8,1,255,255,255
DB 4
DB $48,$18,$84,$B1
DB $38 ,$28 ,$88, $02
DB $C8,$3e,$8C,$03
DB $C8,$38,$8C,$83
DB $3F,$CF,$F3,$FC
DB 8,158,1^8,0
^ 8. 8, 84.84'
1,0,255,8
8,1,8.255
159,85,159,35
DB
DB
DB
06
DB
DB
DB
DB 8
DB 8
DB 9
DB 8
OB 9
DB 9
DB
DO 8
DB 8
DB e
OB
DB 8
DB 9
DB 8
OB
DB 9
DB 8
DB 8
DB
DB 8
DB 8
DB 8
BSi>rr
FILFRQ
TRIES
FILLQN
C2TALr
NOCCHG
OEDBRT
STKHLD
RWCOL
REDIR
LGTHY
TIMES
CKVX
DRAUFG
MOVIX
XD
YD
SXD
SYD
DECItiAL
ZER02
HimS
LO-JALS
DIP
LGTH
DB 8
DB 8
06 9
DB 6
DB 8
DB 8
DB 9
DB 8
DB
06
DB
DB
DB
DB
DB
DB
oe
DB
08
DB
DB
DB
06
DB
08
DB
OB
DB
03
DS
8
8
8,9,0,8
8,8,8,1
8,0,8,255
9,8,8,8
8,0,0,9
8 ,8 ,8,8
0,9,8,9
8,1,255,8
Oil 1 H 1 i-Dj
255,8,1,8
8,0,9,8,9
8,0.8,3,39
1,19,188,232,16
256
256
PAGE 110
A.N.A.L.O.G. COMPUTING
ISSUE 10
WlOlRlD IS Q|U|A|R[E
16K cassette or disk
by Sol Guber
The computer can be used as a very good teaching
tool. The uses for teaching of mathematics are end-
less, from simple addition to calculus. Concepts are
easily represented through the arithmetic algorithms
that are common to computer-assisted instruction
(CAT). The teaching of other subjects like geography
and history can lend themselves to CAI, either
through quizzes or games with the computer either
scoring or asking a series of predetermined questions
and monitoring the answers. The use of CAI in
teaching English and spelling is weak since these sub-
jects lend themselves to repetitive drilling of the con-
cepts. The following is a game that can be used to
teach spelling.
The game is called MAGIC SQUARE, and the
concept comes from a book called Puzzelment by
Kohl. The computer makes a square of letters in a
random order. The player moves a joystick over the
square and forms the letters into words. The letters
have to be one of the letters around the previous
letter. There is a two-minute time limit, and the only
skills needed are in moving the joystick; no typing is
needed. There are two levels of difficulty, a six-by-
six square containing 11 extra vowels and the stan-
dard five-by-five square containing all the letters
except Q,. The game is non-scoring, in that there is no
internal scoring of the game for the number of words
or the number of letters used, so that any rules can be
made up. The computer also does not check to see if
the letters make up a real word.
The following is a quick description of the game.
A question is asked if extra vowels are wanted. If a
"Y" is pressed, then a six-by-six square is formed.
The square is made up in the left corner of the screen.
Every time the joystick is moved, it highlights a
letter. If the trigger is pressed, the letter is put on the
screen below the square. When the word is com-
pleted, then the Start button is pushed. When the
trigger is pressed for the next letter, another part of
the screen shows the next word. The system is set up
for a maximum of eight letters in a word. In the
upper right corner is a real-time clock that is set for
two minutes of time. After the two minutes are up,
hitting another key will start the system with a new
word square and another two minutes.
The following is a line by line description of the
program. Line 10 dimensions the various variables
that will be needed. Line 15 puts the subroutine lines
into variables. Line 20 determines if extra vowels are
desired. Line 30 determines if FLG is set to 1 or 0. In
Line 20, a logical IF is performed, and the question
X$(1,1)="Y" (1) or does not equal "Y" (0) is
answered. This answer is placed into the variable
FLG. Line 40 puts the alphabet into A$ and the extra
vowels into B$ and determines the values for the size
of the square. Line 50 determines if FLG has been set
and extra vowels are wanted.
The Line 55 goes into Graphics 2 without a text
window and changes the color registers from the
default to other colors. Line 60 starts a FOR-NEXT
loop that puts the square on the screen. Lines 70-80
determine the position of the next letter. Line 90
determines a random number between 1 and the
number of letters still needed. Line 100 puts the
letter on the screen in the proper position. Lines 105
and 110 shorten the variable A$ so that fewer letters
are needed for the next choice. By decreasing both
the size of the variable I and moving the unused
letters internal to the variable A$, there is no need to
check if the letters have been used yet. This also in-
creases the randomization of the square.
Line 125 goes to a subroutine that puts the
possible values of the joystick into a look-up table
for quicker translation from numbers to direction.
This eliminates many IF tests. Line 130 puts into
the two low bits of the real time internal clock in the
ATARI. Locations 18, 19, 20 are the real time clock.
The value of 20 is changed every 1/60 of a second.
When the value reaches 255 in location 20, then the
next number is and location 19 is updated by one.
When location 19 is 255, the next update is to and
location 18 is updated by one. Thus, location 20 is
accurate to 1/60 of a second, location 19 is accurate
to about 4 seconds, and location 18 is accurate to
about 17 seconds. Every 77 hours, the clock starts
itself again. Line 140 starts printing the clock on the
screen.
Lines 150 and 160 initialize several variables. Line
170 determines the address of the screen memory.
Line 175 determines the address in ROM of the posi-
tion of the joystick, and lines 178 and 190 change the
color of that letter. Line 210 determines if the trigger
has been pressed, and if it has, then it goes to sub-
routine line. Lines 212 and 214 determine if the
START button has been pressed and if it is the first
or the second time in the line. Line 218 is a delay to
make the joystick less responsive to movement. Line
220 determines the position of the joystick. If it is
15, it is in the neutral position, then GOSUB clock
and go check the trigger again. If it is not in neutral,
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 111
then change the color of the letter in hne 228, add the
appropriate value of the X and Y direction in line
230. Check the movement to see if it is not off the
square in lines 240 and 250. If it is, then do not make
the movement. Go change the clock in line 300 and
then go to change the color of the letter and check the
trigger again.
Lines 1000-1090 are the standard subroutine to
make a look-up table for the joystick. The various
numbers returned by the joystick controller are
translated into an X and Y direction which corres-
ponds to the way the joystick is oriented. This
greatly speeds up the use of the joystick.
Lines 2000-2060 are subroutine clock. Line 2000
determines how many 1/60's of a second have
elapsed since the clock was turned on. Line 2010
determines the minutes, and lines 2020-2030 deter-
mine the seconds. Lines 2045 and 2050 print the
minutes and seconds that have elapsed. If the num-
ber of seconds is less than ten, then a blank is printed
after the colon mark. Line 2055 determines if 2
minutes have elapsed, and if they have, then the pro-
gram goes to line 4000 where it is stopped.
Lines 3000-3070 are subroutine LINE. Line 3000
determines the letter under the joystick. Line 3005
determines if the position is the same as the last time
the trigger has been pressed. If it is, then the program
is returned. The program is fast and it is hard to press
the trigger for a short enough interval to signal the
system and not long enough to signal the system
twice. As a compromise, no letter is allowed to be
used as a double letter, and, to have a letter be
printed on the screen, it must not be the same as the
last letter. In other words, the position of the joy-
stick must have been changed. Line 3007 updates the
position. Line 3010 determines the color of the
letter. Line 3020 determines the spot to put the letter
and lines 3030-3040 put the letter on the screen and
updates the position. Lines 3050-3060 make a ran-
dom sound, and the subroutine returns to the
program.
Lines 4000-4040 put a message in the right hand
corner that the game is over. Lines 4042 make a
sound to signify the same thing if the person was not
paying attention. Line 4050 determines if a key has
been pressed to start the next game. If it has, then the
system goes to line 20, and a new game is started. D
16 DIM fl5C36J ,BSfll> ,KSC3J,X5TEPtl5J,Y
5TEPtl5)
15 CL0CK=2800:LIME=3e80
2B ? "DO VOU MflNT EKTRfl U0MEL5":mPUT
HS
25 FLG=e
38 IF XSfl,lJ="'Y" THEM FLG=1
40 0S=:"ftBCDEFGHIJKLMN0PR5TUyMKVZ" : BS="
ftftfftEEEIII00":SSQ=5: 50=25
50 IF FLG=1 THEN flS CLEN fflSJ +1J =BS : 550=
6:50=36
55 GRflPHIC5 17:5ETC0L0R 0,4,18
58 5ETC0L0R 1, 9, 6 : 5ETC0L0R 2,15,18
68 FOR 1=50 TO 1 5TEP -1
78 R=IMTCCI-1J/55QJ
88 P05ITI0H R+2,-R«550+I
98 5=lHTCRNDt83»I)+l
188 PRINT «6;ASC5,5J
185 IF 5=1 THEN 128
118 A$C5,5J=aSCI,IJ
128 KEKT I
125 G05UB 1888
138 POKE 2B,8:P0KE 19,8
148 G05UB CLOCK
150 R=8;T=1
168 K=2;V=1
170 5C=PEEKf883+256»PEEKt89J
175 L0C=5C+28«V+K
178 Z=PEEK(L0C)
198 POKE L0C,Z+64
218 IF 5TRIG(85<>1 THEN G05UB LINE
212 IF PEEKC53279)<>7 AND T>10 THEN R=
R+l:T=i:vi=8:Hl=8
214 IF PEEKt53279)<>7 AND TOl THEN T=
9:K1=8:Y1=8
218 FOR J=l TO 25; NEXT J
228 5=5TICKC6)
225 IF 5=15 THEN G05UB CLOCK: GOTO 218
228 Z=PEEKtL0C5 :IF Z>64 THEN P8KE LOC,
Z-64
238 K=H+J<5TEPC53 :¥=V + Y5TEPt5J
240 IF K>550+1 OR H<2 THEN K=K-K5TEPC5
)
268 IF Y<1 OR V>550 THEN V=Y-Y5TEP(5J
380 G05UB CLOCK
338 GOTO 175
1088 K5TEP(55=l:Y5TEPt5J=l
1810 X5TEP(6>=l:V5TEPt6)=-l
1828 H5TEPt73=l:Y5TEP(7J=8
1830 XSTEPt9J=-l:Y5TEP(9J=l
1040 XSTEPC18J=-l;Y5TEPtiej=-l
1850 H5TEPfllJ=-l:Y5TEPCllJ=8
1860 H5TEPC13}=0:Y5TEPtl3)=l
1870 K5TEP(14)=e;Y5TEPa4)=-l
1880 H5TEPC15J=0;Y5TEPfl5)=8
1898 RETURN
2808 Z=256«PEEKtl93+PEEK(28J
2818 MIN=INTCZ/3600J
2828 5EC=Z-MIN»3600
2838 5EC=(INTC5EC/68)»ie)/18
2040 POSITION 12,0
2845 IF 5EC<18 THEN ? tt6;MIN;": '■;5EC:
GOTO 2055
2858 ? tt6;MIN;":";5EC
2855 IF MIN=2 THEN GOTO 4088
2868 RETURN
3888 Z=PEEKCLOCJ
3885 IF X1=X AND Y1=Y THEN RETURN
3087 K1=X:V1=Y
3818 IF Z>64 THEN Z=Z-64
3828 SPOT=5C+R»20+T
3838 POKE 5P0T,Z+128
3848 T=T+1
3858 SOUND 8, X«Y«8»RND <ej , 10, 18
3060 FOR J=l TO 15:NEKT J:50UND 0,8,8,
3878 RETURN
4880 POSITION 12,2:? tt6;"TIME"
4818 POSITION 12,3:? «6;"I5 UP"
4020 POSITION 10,4:? tt6;"PRES5 ANY"
4830 POSITION 10,5;? tt6;"KEY TO"
4040 POSITION 10,6:? tt6; "START"
4042 FOR J=l TO 255:S0UMD 0,J,10,18:FO
R K=l TO 3:NEXT K:NEXT J:SOUND 8,8,0,8
4850 IF PEEKC764J=255 THEN GOTO 4058
4060 POKE 764, 255: GOTO 20
(see DrCHECK 2, p. 26)
18 DATA 612,955,774,151,644,562,701,14
8,710,255,809,401,623,529,599,8473
110 DATA 487,734,798,816,230,470,484,7
21,216,286,365,825,3,328,144,6827
228 DATA 936,46,558,83,461,94,222,722,
329,526,336,516,793,604,702,6928
1878 DATA 536,718,788,453,558,656,589,
485,575,591,685,787,413,560,933,9151
3810 DATA 83,784,649,554,912,954,798,8
23,29,357,862,123,614,375,246,8155
,^i)^al
Make Royal Your
&o/lwcii^J^
ATARI® Sourcel
Over 1000
itemsfor
ATARI Atari!
BAJA BUGGY
Reg. $32.95
by
GAMESTAR
Now Only
$29.60
If you're looking for a fast action driving
game tfien we recommend this one. Good
graphics and sound.
FROGGER
by ON-LINE
This is the
genuine FROGGER
game that you see^
in the arcades. Made by the^'^same people
that made Jawbreaker (One of the top ten
sellers.) ^ ., _ ,
Reg $34 95 NOW Only
32KDisk 16K Tape $31.40
DISK or Tape
ONLY
Reg. $39. 95 $35.10
Non-stop, 3-D Scrolling
Action For Your Atari...
.^oi/al Oo/livciieX
48 Hour
Shipping
Available
2160W. 11th Avenue
Eugene, Oregon 97402
For Credit Card Orders Call open
1 •800-452-801 3 sam - 6pm , MonSal,
HARDWARE
Call
Call
Call
Call
400 Computer 16K(Used)
400 Computer 16K (New)
400 Computer 32K (New)
400 Computer 32K (New)
wltti Full-Stroke Keyboard
400 Computer 48K (new)
with Full-Stroke Keyboard Call
800 Computer 48K(Used) Call
800 Computer 48K (New) Call
1200 Computer 64K(NEW! call For Prices)
810 Disk Drive Call
850 Interface Call
410 Recorder Call
Atari 16K RAM Call
Intec 32K RAM 89.00
Intec 48K RAM (For 400) 1 39.00
Full-Stroke Keyboard(For 400) 109.00
Percom Disk Drive((DD/SS) 599.00
WICO Joystick 26.90
WICOTrac-Ball 63.00
Blank Diskettes (10/box) 28.00
Mark II Modem 99.00
Alien Group Voice Synthesizer 1 39.00
Epson MX-80FT -I- Printer 588.00
Amdek Color 1 Monitor 387.00
12' Joystick Extension Cord 9.95
Computer Paper(1 000, 8'/2"x11') 16.95
Trade in your 400 or 800 on a
new 800 or 1200... CALL!
SOFTWARE
De Re Atari (Book)
This manual is The Favorite
among serious programmers.
Learn the secrets of your Atari!
Reg $19 95 NOW ONLY $17.90
GALAXIAN Now you can play
the arcade game at home!
16K Cartridge, Joysticks.
Reg $44 95 NOW ONLY $39.50
GORF Just lil<e the arcade game.
16K Cart. Reg $44 95 ONLY $39.90
24K Disk. Reg $39 95 ONLY $35.10
EASTERN FRONT The MOST
POPUU\R APX game ever, and
one of the best war games !
16K Tape 32K Disl<
Reg $29 95 NOW ONLY $27.90
16K
Tape/Disk
NOW ONLY
$29.95
The city is about to be destroyed and
ONLY you can save its people from
destruction. FAST, arcade type action
game.
DEFENDER
o<t^-
• 16K Cartridge
^^ • Super Excitement
Reg $44 95 NOW ONLY $39.50
New!
• 10 Different Screens
• 16K Cartridge
• Spectacular Sound
& Graphics
Reg $49.95
OUR PRICE
ONLY $44.90
DUST COVERS
> 400/800 Computer
> 410 Recorder
* 810 Disk Drive
Only $8.95e
We deal Exclusively in Atari
Compatible Products. Because of
this, We Know What Works Best!
Call us for the
latest info (503)683-5361
ISSUE 10
A.N.A.L.O.G. COMPUTING
PAGE 113
BEGINNER'S PILOT
by Thomas M. Krischan
Recently I attended a convention which
introduced computers to the novice user. The most
popular demonstration there was a simple graphics
program written in ATARI Pilot. The program
would ask the user to type in the answer to four
questions about a pattern to be drawn. The
computer would then sketch the pattern on the
screen, play a little tune and repeat the questions for
the next user. At times fifteen to twenty people
would gather around the machine to try their hand at
this computerized spirograph. The number of
viewers grew even larger when I began to explain how
the Pilot language worked. The language consists of
only a handful of commands and special characters.
Figure 1 lists the most fundamental of these.
Fig
ure 1. Some Pilot commands.
T:
TYPE
A:
ACCEPT
M:
MATCH
JM: JUMP ON MATCH |
U:
USE
J:
JUMP
E:
END
OR: GRAPHICS
SO
: SOUND
PA:
PAUSE
*
LABEL
#
NUMERIC VARIABLE
The commands of ATARI Pilot consist of one to
two key letters followed by a full colon or a special
character (eg. #). Each command is directly followed
by a subcommand. The subcommand may be an
instruction, label, numeric variable, character string
or some other statement depending upon the nature
of the original command. We will describe the
nature of each of the commands that are listed in
Figure 1.
The TYPE command (T: ) is roughly equivalent to
the PRINT command of ATARI BASIC. The
character string that you wish to display on the
screen is typed after the command. However, the
character string does not need to be enclosed by
quotation marks. If quotation marks are included
they will also be displayed on the screen. The
ACCEPT command (A:) is similar to the INPUT
command of BASIC, with two major exceptions.
Character string variables do not have to be
dimensioned nor do variables have to be included at
all. In the event that no subcommand follows the
ACCEPT command. Pilot will automatically place
the character string in a special test register. In the
event that the user wishes to type in a number then a
numeric variable should follow the command.
NUMERIC VARIABLES consist of a pound sign
(ie. #) followed by a single letter; A through Z.
Consequently, there are a maximum of 26 numeric
variables.
The MATCH command (M:) compares the
character string of the special test register against
the character strings in the subcommand. Character
strings in the subcommand are separated from each
other by commas. If a match occurs. Pilot notes
which subcommand was the successful one (ie. first,
second, third...). The JUMP ON MATCH
command (JM:) recalls this notation and executes
the corresponding subcommand. Subcommands are
in the form of LABELs which are denoted by an
asterisk (i.e. *) followed by one to several letters.
Again, commas separate the subcommands. In the
event that a match has occurred, Pilot will search the
entire program for a LABEL that corresponds to the
appropriate subcommand of the JUMP ON
MATCH. Execution is then transferred to this point.
The USE command (U: ) causes Pilot to once again
search the entire program for a LABEL that matches
the subcommand. Execution is as well transferred to
this point. However, upon reaching an END
command execution is returned back to the line
directly below the originating USE command. The
USE command is similar to the GOSUB command
of BASIC. It calls subprograms, executes them and
returns back to the main program. The JUMP
command (J: ) is equivalent to a GOTO command in
BASIC. It causes Pilot to search the entire program
for a LABEL that matches the subcommand and
transfers execution to that point. The END
command (E:) indicates the terminating point of a
program or subprogram.
The GRAPHICS command (GR:) causes the
computer to enter the graphics mode. The
subcommand instructs Pilot on how to draw, fill,
turn, change color, clear the screen or to quit the
graphics mode and return to the text mode. The
graphic techniques of Pilot are quite different from
those of ATARI BASIC and further explanation will
PAGE 114
A.N.A.L.O.G. COMPUTING
ISSUE 10
be necessary. The two major differences lie in how
the languages reference points and how they issue
line drawing instructions. In BASIC the point (0,0)
lies in the upper left hand corner of the screen. In
Pilot the point (0,0) lies in the direct center of the
screen. This conforms to the popular Cartesian
coordinate system which is taught in geometry class.
The visible portion of this grid accounts for 160
points horizontally by 80 points vertically. This is
equivalent to the visible number of points in
BASIC'S GRAPHIC MODE 6 and 7. However,
nonvisible points may be addressed in Pilot without
causing an error statement. The second difference is
how the languages issue drawing instructions.
Instructions in BASIC are an absolute reference
system, (ie. PLOT x,y and DRAWTO x,y). In Pilot
the only absolute reference point is the initial one (ie.
GR:GOTO -20,5) after that all references are
relative to the last point. The last point is referred to
as the "turtle", hence the nickname "turtle
graphics". The subcommand TURN redirects the
turtle. A positive value after the subcommand turns
the turtle so many degrees clockwise. A negative
value turns the turtle counterclockwise. The
subcommand DRAW sketches a line. The value
after the subcommand determines the length of the
line. In ATARI BASIC every line length and turn
requires a separate calculation. In the case of the
latter, calculation could be quite complex.
The SOUND command (SO:) allows you to
create musical tones. Up to four subcommands,
separated by commas, can be assigned. The
subcommands are in the form of integer values from
through 31. These values correspond to musical
tones, where 1 represents low C and 31 represents
high F. Zero turns the sound off. Four subcommands
allow for four separate tones to be played at the same
time. The PAUSE command (PA:) determines the
length of play for the preceding tone. The sub-
command is in the form of a positive value. Tones
may be played in l/60th second intervals; 60
pauses one second, 120 pauses two seconds, and so
on.
There are several other commands and special
characters. We have described the ones essential to
understanding the Pilot program referred to in the
opening paragraph and have listed it in Figure 2. We
will now go through this example step by step.
Figure 2.
10 JtLOOP
12 TrMHAT C0L0RCRED,BLUE,YELL0H3
13 0:
14 M:RE,BLU,YE
16 JM:«RED,»BLUE,«VELLOM
18 WCONTINUE
28 TiNUMBER OF 5IDE5
38 A:»S
32 T:LEMGTH OF SIDE
34 A:ttL
48 TiNUMBER OF DEGREES
50 A:ttD
85 U;«DRQM
86 U:»SOUND
98 J!»LOOP
99 E:
180 «DRAM
130 GR: CLEAR
140 GRIGOTO -28,5
150 GR:ttS(DRAH ttL;TURN t»D)
168 E:
200 «SOUND
210 50:13,17,28
220 PA: 60
230 50:13,18,22
240 PA: 60
250 50:15,28,24
260 PA: 60
270 50:13,17,28,25
280 PA 1120
290 50:8,8,8
294 E:
388 «RED
310 GR:PEN RED
320 J:#CONTINUE
400 *BLUE
410 GR:PEN BLUE
420 J:)tCONTIHUE
500 «VELLOM
510 GR:PEN YELLOW
520 J:«CONTINUE
599 E:
Line 12 types the question, "WHAT COLOR
(RED, BLUE, YELLOW)". Line 13 accepts the
user's reponse. Line 14 matches this response to the
character strings, "RE", "BLU", and "YE". If a
match exists, it notes which character string caused
the match. Line 16 transfers execution to the
corresponding label. Lines 20 and 30 type the ques-
tion, "NUMBER OF SIDES" and accept the user's
response as numeric variable #S. Lines 32 and 34
and 40 to 50 behave in a similar fashion. Lines 85
and 86 use two subprograms labeled "*DRAW" and
"*SOUND". Line 90 causes Pilot to jump back to a
statement labeled "*LOOP" on line 10. Line 99
indicates the end of the main program.
The main program illustrates two techniques of
calling subprograms. The first technique is the
JUMP ON MATCH method; line 16. The second
technique is the USE method; lines 85 and 86. The
first method causes the program to jump from line
16 to one of three labeled statements, depending
upon the preceding match; line 14. If the user's
response was "RED" then Pilot will find a match in
the first character string. This will cause execution to
jump from line 16 to the labeled statement "*RED"
on Une 300. Line 310 causes the turtle to select a red
colored "PEN". Line 320 causes the execution to
jump back to line 18 which is labeled
"*CONTINUE". This just so happens to be the very
next line after the JUMP ON MATCH command.
Had the user responded "BLUE" or "YELLOW"
then the turtle would have selected that
corresponding "PEN" color.
The second method of calling a subprogram is the
USE command. Line 85 causes Pilot to transfer
execution to the statement labeled "*DRAW" on
line 100. Line 130 clears the screen while line 140
positions the turtle on coordinates (-20,5). Line 150
tells the turtle to draw a line of length #L, then turn
#D degrees and repeat this pattern for #S number of
times. The color of the pattern will depend upon
which color "PEN" the turtle has selected. Line 160
indicates the end of the subprogram and Pilot
transfers execution back to the very next line after
the USE command.
The next command happens to be another USE
command. This command causes the program to
transfer execution to the statement labeled
"*SOUND" on hne 200. Line 210 causes three
musical tones to be played. The values 13, 17, and 20
correspond with the musical notes of middle C,
middle E, and middle G, respectively. Line 220
causes the tones to be played for one second. Line
230 through 280 are similar in fasion. Line 290 turns
the sound off. Line 294 indicates the end of this
subprogram. Pilot transfers execution back to the
very next line after the second USE command. This
line is a JUMP command which causes the entire
process to repeat.
For those of you that are not duly impressed with
the Pilot language after reading this article, I have a
little exercise for you. Part one of the exercise
requires you to write a program similar to this one
using ATARI BASIC. Sounds simple, doesn't it? The
rules for writing the BASIC program limit you to 42
lines with one statement per Une; just like the Pilot
program. Part two of the exercise requires you to
enter into a small race. In this race there will be a
turtle (me) and a hare (you). Our programs will do
the actual running. For judges we need to find two
novice programmers. The race begins when you
hand my turtle article over to one judge and you then
start to explain your harebrained program to the
other judge. The race is over when either judge
completely understands the entire program and
finishes the explanation by saying "Ah ha!" Who
will you bet on, the turtle or the hare? D
ISSUE tt9 CONTAINED ERRORS IN 2 PROGRAM
LISTINGS. HERE ARE THE CORRECTIONS:
DISKTOOL PART 2 iPG. 38, LISTING tt2) !
128 GOTO 2000
330 SECNUH^VALtASl ;I F SECNUH<1 OR SECN
UM> 728 THEN ? "
mi": POP :GOTO 370
INVALID SECTOR. RA
348 SECHI=INTCSECNUM/2563 :5ECL0H=INT CS
ECNUM-<SECHI«256)> : RETURN
BURP! CPG. 62. BASIC LISTING) I
150 TRAP 170
168 READ ASPUT ttl,A:GOTO 160
NEW FOR ATARI
diskwiz
COMPLETE & AFFORDABLE
DISK EDITING REPAIR & DUPLICATION
SYSTEM FOR ATARI OR PERCOM DRIVES
• Fast M/L operation • Repair DOS/NON DOS sec-
tors • On screen Hex/ASCII editing • Print out all
modes to any printer • Dumps inverse & special
Grafix Char to Epson Craftrax & NEC 8023A • Fast
mapping, searches • File trace • Speed check and ad-
just • Block move • Auto link pointers, file codes •
VTOC bit map functions • Retrieves deleted files • Fix
dup filename • Use nonformatable disks • Complete
manual • Easy, fast, complete • Onboard
disassembler • Even runs on 16K • Supports 1 or 2
drives • FHEX-DEC-ASCII Converter • And More!
All this for only $25. postpaid
Don't waste your money on more expensive
programs that don't deliver as much.
48 hr. shipping for cashiers checks & money orders.
Allow up to 3 weeks for personal checks, — C.O.D.
add $2.00. Club & dealer enquiry encouraged.
(213) 376-4105
, 1906 Carnegie Lane "E
lACROWARE Redondo Beach, CA 90278
Alari, Epson, NEC & Percom, are trademarks of Atari, Inc., Epson America, NEC,
Percom Data respectively.
AUen
Maci
ATARI
PAYROLL SOFTWARE
FOR
THE ATARI' 800 "
Miles Payroll System™ is an advanced and comprehensive payroll accounting system
designed for businesses today. Cumulative totals are maintained for each employee, as well as
complete repofting. check writing, and W-2 reporting. Some features include:
• Random access file organization for fast updating of individual records.
• Allows weekly, biweekly, semimonthly or monthly pay periods.
• Completely menu-driven and user-friendly
• Regular, Overtime. Double time. SicK Holklay, Vacation Bonus and Commisskxi earning categories
• Payrall deductions include Federal W/H Tax, State W/H Tax, City WH Tax, PICA, SDI. Group
Insurance and 3 user-defined deductions.
• Tax sheltered annuity deduction capability for IRAs and other tax shelters.
• State and Federal Unemployment Insurance maintained
• Complete file viewing and editing capability.
• Maintains up to 50 employees.
• Up to fO user-defined Worker's Compensation classifications.
• Federal Tax tables may be changed in only 1 5 minutes each year by user when IRS changes tax.
• Table method used for State and City Tax. allowing compatibility with any state's or city's tax
• Produces 15 different reports, including W-2 Forms Report.
• Checks calculated and printed automatically.
• PROGRAM ENABLING MODULE" peotects valuable payroll infamatkm from unauthaized users
• 3 user-defined payroll deductions to accommodate customized needs such as savings, profit
sharing, tax shelters, pensions, etc.
• Pay period, monthly, quarterly and yearly cumulative totals maintained for each employee.
• Automatic input error detection and recovery protects system from user-generated errors.
• Easy-to-follow, detailed, and comprehensive user's manual and tutorial leads the user step
by step allowing anyone with little computer experience to easily operate the package
Includes index.
• Color, sound, and graphics utilized for user ease.
• Maintains employee pay history.
• Allows for manual payroll check writing.
• Packaged in a handsome 3-ring deluxe pocketed binder with 3 diskettes and manual
• Reasonable price.
See your local store, or contact Miles Computing.
jk A MILES COMPUTING
/W^ m-i 71 36 Haskell Ave. #204
/ J» llie& VanNuys, CA91406
/ " (213)994-6279
Atari is a registered trademark of Atari, Inc
Miles Computing. MILES PAYROLL SYSTEM, PROGRAM ENABLING MODULE are trademarks
of Miles Computing. Van Nuys. California. Not affiliated with Atari. Inc.
$1 79.95. Requires 32K and two Atari* 810'" disk drivers Payment in U.S. funds required Willi
order. California residents add 6.5% sales tax. COD. or prepayment only. Dealer inquires
welcome.
PAGE 116
A.N.A.L.O.G. COMPUTING
ISSUE 10
INDEX TO ADVERTISERS
ABBS 41
Access Unlimited 11
Adventure International 4, 37, 70,
118, 119, BC
Allen Macroware 115
Alpha Systems 17
Amulet 40
A.N.A.L.O.G. Software 2, 3
Austin Franklin 22
Avalon Hill 72
Bontek 75
CAP Software 17
CE Software 75
Chameleon Comp 34
Computability 19
Don't Ask Software 54
Dorsett 47
Eastern House 55
Educational Software 60, 69, 76
English Software 84
EPYX 40, 78
Infocom 38, 39
I.S 66
Leading Edge 1
LJK 67
Macrotronics 25
Micro Mainframe 7
Microprose 27
Mideastern Software 75
Mighty Byte Computing 25
Miles Computing 115
MMG Micro Software 63
Monarch Data Systems 34
Mosaic INFC
Newell Industries 42
On-Line Computer Centers 31
One-Stop Software 11
OSS 91
Percom 117
Programmer's Institute, The 30,48
Quality Software 58
Quicksoft 21
Rantom 43
Roklan 83
Royal Software 112
Sector 1 25
Sierra On-Line INBC
Software Gallery 42
SSI 77
Tech Data 34
Thesis 34
We ARE Atari!®
New Jersey's Largest Retailer of Atari
Programs for 400/800 Models Over 40
Programs Available from More y^ I Jll
Than 60 Manufacturers. Send y^ U y vl V
or Stop by for Our ^ ^"^ ^ ■ ^
Latest Catalog
Only $2.00 (includes postage and handling)
Fully Refundable as a $2.00 credit
with your first purchase!
Mail check or money order
payable to Software Asylum to
Software Asylum Catalog
626 Roosevelt Avenue
Carteret, N.J. 07008
ATARI' is a ./'40K
registered
trademark of
lATARI, INC
"PLAY BALL"
for Atari®
by Cartho Games™
True-to-life Baseball based on Actual
Statistics, so realistic you can even get rained out!
Manage, call the plays, bunt, steal, pinch-hit.
Comes complete with team data and score sheets.
ONLY
+6% tax NJ residents
48K Board $149.95
Fastchip $41.95
We now RENT computer games
- ask for details!
Exclusively from
$24.95 Disk H
Software .SSVLUn, Inc.
(201)969-1900
We've Got More Than A
Fond Attachment For Your
ATARI
We've Got A Disk Drive For $488.
Percom Data Corporation believes your Atari* home computer is more than just
fun and games. We believe you should be able to get a single-density, floppy-disk-
system for your Atari 400 or 800 at a price that will take you into the future without
knocking you into the next galaxy.
Percom Data has been manufacturing disk-drive systems, and other accessories
for personal computers since the mid-1970's and is the industry standard to
follow when it comes to data separation and system compatibility
The Percom Data AT-88 combines Percom Data quality and reliability at a price
that is not a budget-buster
The Percom Data AT-88 offers 88 Kbytes (formatted) in single-density, with plug-
in ease of attachment to your Atari. The AT-88 has integral power supply, "no-
patch" to Atari DOS and critical constant speed regulation.
Take advantage of this low introductory price of $488 by calling Percom Data now
to get more information, or the name of an authorized dealer nearby Call toll-free
1-800-527-1222
PEfiQOM QATA
CORPORATION
Expanding Your Peripheral Vision
DRIVES • NETWORKS * SOFTWARE
11220 Pagemill Road Dallas, Texas 75243 (214) 340-7081
1-800-527-1222
■Atari 400/eoO Is a trademark of ATARI. INC..
Good Golly! What A GAME!
The original arcade game PREPPIE! will give you hours of toe-tickling fun. You take the controls, moving your young
prepster about on the golf course. And what a golf course! It's unlike any you have ever played on before. There are dangers
everywhere, and only you can keep the little Ivy Leaguer from a fate worse then Penn State!
PREPPIE! is written in state-of-the-art machine language, is joystick compatible and fully utilizes the Atari's sound and
graphics capabilities. Quite frankly, it will give you the most fun you can have on an Atari microcomputer.
PREPPIE! is available at fine computer, book, and hobby stores everywhere.
An exclusive game from
To order, see your local dealer. If he does not
have the program you want, then call
1-800-327-7172 (orders only) or write for our
free catalog.
"My Atari never did things lil<e this before!"
— Holister Townsend Wolfe
"I had so much fun I almost biew my
doughnuts."
— Theodore Boston III
dventuTff
INTERNATIONAL
Published by ADVENTURE INTERNATIONAL
a division of Scott Adams, inc.
BOX 3435 • LONGWOOD, FL 32750 • (305) 862-6917
"I haven't had this much fun since Buffy
and i went to Princeton tor the weekend."
— Martha Vineyard
OTHER won
OTHEIWtEALITIES.
, (FOR EX REBJ.EHC EP ADVENTURERS QNLYf^
ICntUJC by Jyym Pearson
*^ Of CROWLEY K
- MANOR
ejJB
Mf LEY MANOR
<_.
^^^^^_ -^v^ Cop>riKhl 19(11
dl jffiSAciventute
%PiM V^ff^ INTERNATIONAL
PHICtS SUBJECT TO CHANGE
1 {R^dventure
' l,Vii^**^ INTERNATIONAL
Stori AI>AM>t INI-
by Jyym Pearsol^
You've sensed it before: nameless, unreasoning HIHHnHme unseen
of things that scurry and scrabble through the shadows when the lights have
been put out. How then will you fare when you face the Ultimate Evil; how will you
possibly survive — THE CURSE OF CROWLEY tvlANOR?
Jyym Pearson, author of ESCAPE FROM TRAAM and many other fine pro-
grams, explores a new dimension in fright with a macabre tale of things that go
bump in the night. THE CURSE OF CROWLEY MANOR is an excursion into mind-
wrenching terror as you enter the dreaded Crowley Estate in search of answers to
some pretty grisly questions. Fear fans take note: This is the stuff that
nightmares are made of, so think twice before you approach.
THE CURSE OF CROWLEY MANOR features Adventuring the way YOU like
it, with plenty of clever plot twists, and a scenario that'll roll your socks up and
down your legs! If Adventuring has become a bit tame for you lately, this is one
sure-fire cure! THE CURSE OF CROWLEY MANOR will run on any ATARI 400 or
800 with ample memory. We supply the software; you supply the atmosphere.
(A well-lit room is optional, but recommended!)
ATARI 16K TAPE 050-0108
B©©.
$24.95
U_
lU_I
by Jyym Pearson
As soon as your small space cruiser began losing altitude, you knew you
were in for serious trouble. You somehow walked away from a fiery landing that
would've spelled certain death for a less fortunate man, but as one may quickly
earn, there are fates far worse than a rapid death. . .
You've managed to walk away intact from the awesome Curse of Crowley
Manor. So far, so good. But will even your finely tuned Adventuring skills give you
the necessary edge to . . . ESCAPE FROM TRAAM?
ESCAPE FROM TRAAM is a detailed Adventure for the ATARI 400 or 800
computer that defies the player to successfully search a bizarre alien world for a
means of escape. The perils are many and the opportunities for survival are few.
But for the clever Adventurer, a single opportunity is all that might be needed for
a speedy exit from this hellish world. Are you up to the challenge?
All of the traditional Adventure elements are in ESCAPE FROM TRAAM,
including two-world command input, game save feature, and an e/i
vocabulary. Add to this the impact of a dynamic storyline that'll give evun mt;
most experienced Adventurer a real workout! ESCAPE FROM TRAAM — - a tine
addition to any Adventure collection.
ATARI 16K TAPE . . 050-0109 $24.95
To order, see your local dealer. If he does not have the program, then call
1-800-327-7172 (orders only please) or write for our free catalog.
Published by ADVENTURE INTERNATIONAL
a subsidiary of SnotI Adams, inc.
BOX 3435 • LONGWOOf' r, ;'5o . (305) 830-8194
•
•:\^^:
ATABI li • nsifWH W«l«i.«k ol ATAW Inc. • VIC20 ii i r««»S5SRSofCominodori, • APPLE i, . .r«l.m«k ot APPLE CompuW Inc.
ATARI BASIC - LMnitns by Uting
An excnlloni book lor iha baginnar, Many
ihon piogramt nitd leunilnQ oxurcisei.
Of(tar-No, 16<( 67-96
amnfi liir tin ATARI Computor
Thii book (|a>R(ibt» Mclvsnced piaQtanv
mliig ladirilqiMt like plavocmisiile'
giuptllci Hncl uw of Ills haiclwaFD -regulars,
Comnim many rnady-lorun proBnimj in
BASIC anil one cailod GUNFIGHT in
niHchiiui lartgiiaga.
Dt<tof-Nu. 162 £7.96
Mtnw to program your ATAHI In 6B02
ituctilnfl tanflutgi
The lubjaci of thit book ii to loecli you
tiQW 10 piogtom you' ATARI compuier
in 6602 iTtachlnB lin^uage, Contains a
laioa collection uf ptotjtamt.
Orilw No. IBS Sa.fiS
Ptogram Dfftcripltam (ATARI)
Otdffr-No. 173 S6.aO
FORTH on ttw ATARI-Laaming by
Uting, Ordw-No. 170 &7.S6
Boohi * Sotiwarit (or VIC-20
3K RAM Exp. t
Wordpioc»tor.8 K R AIri /f 4870
Mtiling LIm. ISK RAM U 4883
Trick* lor VICt iliook) #176
riCTAC VIC ^4880'
OAMEPACK ll3gimM)#4B81
Dual Joyilick Initruct. ^4886
INPUT/OUTPUT Progr #4886
MiiuiiiMinblaF H 4896
Tonntt. Squnti.Bnrak #4881
RunltlforVlC #4804
S19.9
S14.Q
s g.e
fi 9,0
£14.9
E 9.9
E 0.8
B.9B
VIC-20® ■ SINCLAIR/TIMEX'*
OSI - APPLE® PET/CBM
ELCOMP PUBLISHING, INC.
53 Redrock Lane, Pomona CA 91766 / USA
Phone {714} 623-8314
Pavmont: Chock, nwney order, VISA. Muter Chergt,
Etirocfisck
Order* (ram outilila USA: add IK % thlppitig.
CA-roiidenti wdd 6,1) % mh.
Univsrtul ENperimenier Board lor the
VIC-2D - (Save money with this great
boatd). Thii board plUQi rigitt Into the
CKfMnsion iloi ol the VIC-20. The lianrd
contBlni a largo prototyping area tor vn<'<
own circuit dniign and oKpansion. Thu
oontuuciion article shows you how to
build your own 3k F1AM eitpHnrtei and
ROIi^lionrd.
Order-Nn. 4844 Eia.QS
Softwure for SINCLAIR ZX-81 ^nd
TIMEX 1000
Machiliit LiingiinQi) Monitor
Order No, 33m $9.m
MnllingLlM #2308 £10.05
HortiMc^e
Handbook
Miciocompiiiuf Miiiili
HaiKlbook ifl-lt. inm^i
DBScriptions. pinnuls aiu!
ipocilicaiions of Die moit
pop.,1., mic,ap™«„»r> ^^^^•^,•^1'^^°
and support chips.
A MUST tot the haiclwaii
Carr ar)ri Feeding ol itiu Coinmodortr PET
fcighi diiipiors exploring ftT haiJware,
Includes mpaif and i'merfacing inlormation.
Proiirumminn trick: and ichemotici.
Ordor No.150 8895
Cotnptex Sound (jonerdtlon
New tevited applir.aiioni manual lot Ihu
TexBi inittomentj SN 76477. Complex
Suiiiul Generator.
Ordor-No, 164 C6.95
SK Microwfl OASIC neforenco Manual
O.itarNo, 151 M.95
Expaiition Handbook for 6602 and 6802
Qrdor No, 162 MJK
„. BookilorOSI
K<^ The Firii Book ol OHIO it 157 E7-95
Tbo Second Book of OHIO « 158 E7,9B
The Third Booh of OHIO J* 159 E7-95
The Founh Book of OHIO it 160 fi9.96
The Filth Book of OHIO It 161 S7.95
thEcuiitDinpiilc
BMi^
Order No. 29
E14.g
Bare boards from tho Custom APPLE Book
^#606 S39.00
EPROM Burner 'f607 S40.00
8K EPHOM/RAM Bo.i.d tl 609 829,00
Prototyping board .fB04 629,00
Sloi repealei board //606 E49.00
Order iwo boards 4ind qut the hook FREEI
The Custom Apple + Other
Uystaries - A complete quide
to r.ustomiiing the Apple Soli-
Wiiia and Hardware.
OrdBrNo.680 B24.95
We also slock the boards
which are uud in the book
"The Custom Apple..."
Ibaie boards).
ProgramminQ in 6S02 MKhifie
Languogo on yadr PET t CBM
2 complete Editor/Assembleii
{Source code 3 hexdump * des-
CTiption plus a poweiliil
machine language mnniioi
(hexdump) I.
Ordor-No. 166 S19.9&
Above auamblais on caisatte
IBook No. 166 includttd).
OrdsrNo. 4B1Z 839.96
Programming in BASIC
macnlna language with the
ZX-SI 182) or TIMEX 1000.
Or<itr No. 174 (booh) S8.S5
Small Busin«n Programt
Complete litlinQS for the
business uwir. Inventory, invoice
writing, mailing tin and much
more.
Order-No. 156 S14.90
EDITOR/ASSBWBIER
COMINQ SOONI
ORDER N0W1
iA Look in the luture
with your ATARI
(Astrology and how to
do your own,horosco|w
oniheATAmBOOJ
Order-No. 171 S0.95
Astro logy and Bio-
-■^*»-= rhythm lor ATARI
St^ -' (CBsi. ordiik).
T> ' T| OrdwNo. 7223S29.95
I Birth controKKnoui
jt^ Oglno) Cass or dink
^ Order No 722282895
Programs from Book
" 164
The progtdms from
book No. 164 0(1 dtbk
(hook (ncludpil)
Ordar-Na.?100E20 00
Program I from Book
No. 1fi2 00 dhlv (IwDk
included)
OrdfirMo.7,ii1 529 95
GUNFIGHT
This game iiuutis iwu
ioysiicks. Armnnlitint
sound, Comes on «
booiatile CHSiBttfl "
Order-No, 7207619 95
Hardware ADO ONs
lor ATARI
EPROM BOARD
(Cariridgi:) Holds
two 4k EPROMs
(2532), EPROMs
noltncludod.
"''''I' # 7043 E20,
EPROM BOARD KIT
Siimff ii dhovQ biit barn lioaril
description.
Order-No. 7224
Printer Interface
This consiruciion ariiclB comes with prin^
ted circuit board + software, You can use
ThH EPSON printer without tha ATARI
printflr imortace. (Gamepori 3 and 4).
Order-No. 7211 819.95
RS-232 Iniei-facB for your ATARI 400/800
Soflwaie ' I'ONniii-ioi > conitr. unicle.
Order-No. 8291 819.95
EPROM BURNER for ATARI 400/800
Works wiih (jiiniitpori . No .uliliiioniil
powBr supplv.Conics conipl
with softwiire (271fi.2733.2S3J).
Orrior-No, 7042 8170.0(1
EPHOIUI BURNER for ATARI 400/flOO Kit
Primed ciicuiT Iki.imI iiicl, soltwiito iiiid
exiunslve conslnicnon iirticle.
Order-No. 7292 849,00
I ^^^^ AT MAS
I ^^ Maao -Assam bier lor
ArAHi800/4aK, Onoof
the most powerful editor aucmblers
on tha markoi. Vsrsallle editor with
scrollinu. Up to 17k ol source-coda. Very
fast, translates 5k source-code In atwut 5
sekonds. Source code can bo saved on disk
ori-a(seito (InchideiATMONAT).
Order No 7098 dith version S89.DO
Order No 7909 carl ridgs van Ion 8129.00
ATAS
I II I A1MAS but without macro-
This it a tracoi
clebuggor) that Isti you
explore the ATARI RAM/
ROM area. You can slop at pro-
viously selected address, opcode, or
operand. Also very valuable in under-
staruling the mlcroprocassor. Includes
ATMONA-1.
OrdorNo, 7040
Order-No. 7OB0
ATMONA-1
A powerful machine Inrigiiugo monitor.
Oisassemhle, dump {hex and ASCMI.
change nii-'mury locaiioo, lilock translai,
fill memory blot^k, savu arxi load muchlnft
language program.^, start proijrams. Prinior
option via three dilforHni iru«rliicoi,
Ordoi-No, 7022 casiotte version 81996
Ordar-No. 7023 disk version 824 96
Order-No. 7024 artrtdgtt variion 85900
disk version
FORTH
from Elcomp
Fhiblishmg.lnc. it an ex-
tended FigForih-version, Editor
anil \fQ package incliKled. Uijlriy
package includes decompiler, sector
copy. Hex-dump (ASCII), ATARI
Flfehartdling, total graphic end sound,
joystick program and player miiiite.
Extremely powerdill
Order-No. 7056 diik 839;9&
Floating point fMCkue witli irigono-
metric functions (0-90"!.
Order-No. 7230 disk 820-95
Lonrn-FORTH from Elcomp Piihli-
ihing, Inc.
>
PMHMnoli
^vc;'*
k^.
.tm^"'
ifmii'i.l*^
Bi/'
It's the same old story. Your kid
boots up his favorite space swash-
buckler and pleads, "Ah, come on. Dad,
ust one game of Starstruck."
Naturally, you resign yourself to humiliating defeat. AnotH
day, another loss.
Well, take revenge with Golf Challenge! :
Practice by yourself, rain or shine, then challenge your kid or
whole family to nine or 18 holes of championship golf -up to four at a time
Soon you'll be saying, "C'mon, son, just one more game of Golf
Challenge!"
Order Golf Challenge cassette for Atari 400/800 from your local computer dealer for S24.95
or directly from Sierra On-Line, Inc., Sierra On-LineBuMding, Coarsegold, CA .93.6 14
(209) 683-6858. Add one dollar for shipping and handlinilM^EiMASTERCARD • CHjE
m o m®/Mmm(m
TX
"N
*^f*^-4t*.
^■12sa^.■Jli'■l
WHEN YOU SIT DOWN TO A
SCOTT ADAMS' GRAPHIC ADVENTURE
,n
ANYTHI
That's right — anything can happen, and it usually
does! Because with a Scott Adams Graphic Adventure, the
fantastic Is as close as your computer -- and your own
fertile imagination. Each S.A.G.A. features the finest in hi-
resolutlon graphics — graphics which compliment and
enhance the classic text — and, they can be toggled on or
off with a single keystroke, too. Plus, optional Votrax Type
'N Talk™ and printer compatibility give you the flexibility to
add new dimensions to your Adventuring — when you're
ready.
The Incomparable S.A.G.A. Series — experience the
magic yourself. But be prepared for anything.
Also, look for the Scott Adams Text
Adventure Series on these fine computers:
TRS-80 • COIVlMODORE VIC • NEC PC-8001
TEXAS INSTRUMENTS 99/4 • CPIM Z-80
A^dventure
V^^i*^ INTERNATIONAL
S-A-G-A. #1 — Adventureland (Skill Level: Moderate)
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0201 $39.95
ATARI 48K Disk 052-0201 $39.95
S.A.G.A. #2 — Pirate Adventure (Skill Level; Beginner)
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0202 $39.95
ATARI 48K Disk 052-0202 $39.95
S.A.G.A. #3 — Mission Impossible (Skill Level: Advanced)
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0203 $39.95
ATARI 48K Disk 052-0203 $39.95
S.A.G.A. #6 — Strange Odyssey (Skill Level: Moderate)
APPLE 2 PLUS 48K Disk (DOS 3.3 req.) . . 042-0206 $39.95
ATARI 48K Disk 052-0206 $39.95
PRICES SUBJECT TO CHANGE
To order, see your local dealer. If tie does not have ttie program, ttien call
1-800-327-7172 (orders only please) or write for our free catalog.
Publlstied by ADVENTURE INTERNATIONAL
a subsidiap- -'''--" *-■ '--
BOX 3435 • LONGW